2012-05-29 2 views
0

Мне нужно загрузить файл KML при загрузке файла, преобразовать его в GML с помощью XSLT и затем сохранить его в моей базе данных SQL 2008. Я не знаю, как это сделать. Любая помощь приветствуется.Как использовать XSLT при загрузке файла ASP.Net MVC

Вот код, который я до сих пор:

public ActionResult Create(GeoRegion georegion, HttpPostedFileBase Polygon) 
    { 
     if (ModelState.IsValid) 
     { 

      if (Polygon.ContentLength > 0) 
      { 
       var fileName = Path.GetFileName(Polygon.FileName); 
       var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); 
       Polygon.SaveAs(path); 

      } 




      db.GeoRegions.Add(georegion); 
      db.SaveChanges(); 
      return RedirectToAction("Index"); 
     } 

     return View(georegion); 
    } 
+0

Если вы еще не сделали этого, я рекомендую прочитать [эту статью] (HTTP: // spanring .eu/blog/2005/12/11/kml2gml /) Кристиан Спанринг. – kush

ответ

0
// Create the XslCompiledTransform object 
var transform = new XslCompiledTransform(); 

// Load the stylesheet file 
transform.Load(xslFilePath);     

// Transform the XML file and store the output 
transform.Transform(sourceFilePath, targetFilePath);  

http://msdn.microsoft.com/en-us/library/system.xml.xsl.xslcompiledtransform.aspx

+0

Как сохранить преобразованный xml в базу данных? – user1382770

+0

Существует довольно сложный способ сделать это здесь: http://mscerts.programming4.us/sql_server/sql%20server%202008%20%20%20developing%20custom%20managed%20database%20objects%20%28part%203%29 % 20-% 20developing% 20managed% 20user определяемые% 20functions.aspx. Однако [изучить параметры вывода] (http://msdn.microsoft.com/en-us/library/0610k0w4.aspx) для XslCompiledTransform. Предположительно, вы хотите сохранить вывод в поле XML в базе данных SQL Server. Используйте параметр вывода Stream или TextWriter и напишите полученный результат в новое поле базы данных. –

Смежные вопросы