![](/img/trans.png)
[英]What is C# equivalent of geography sql server datatype in .net framework 4.0?
[英]SQL XML datatype equivalent in C# .net
我目前正在從 XML 文件中解析數據,並將它們存儲到數據庫的 nvarchar 字段中。 我現在希望將 NVarchar 更改為 XML。 我在 EF Core 上使用 Code First 方法,C# .net 中的 XML 等效數據類型是什么?
以前的一些查詢表明我可以使用字符串( C# 等效於 SQL Server DataTypes ),但有些人提出了其他建議( httpsNET/framework/microsoft.數據類型映射?redirectedfrom=MSDN )。
我希望澄清我的查詢的最佳方法是什么,我不操縱 XML 內容,我只是解析文件並將數據插入數據庫。
更新:
我最終在 C# .net 上使用了一個字符串,因為我不必做任何 Xml 操作,我從文件中復制了數據並將其作為字符串發送。 下面是我使用的代碼:
var doc = new XmlDocument();
doc.Load(file.FullName);
if (doc.FirstChild.NodeType == XmlNodeType.XmlDeclaration)
{
XmlDeclaration xmlDeclaration = (XmlDeclaration)doc.FirstChild;
if (String.Compare(xmlDeclaration.Encoding, Encoding.Unicode.WebName, StringComparison.OrdinalIgnoreCase) != 0)
{
xmlDeclaration.Encoding = Encoding.Unicode.WebName;
}
}
string XmlString = doc.OuterXml;
我會避免直接使用字符串——尤其是在你只需要存儲數據的情況下。 go 與SqlXml或其他給讀者的東西。 例如像這樣:
var param = cmd.Parameters.Add("@xml", SqlDbType.Xml);
var doc = XDocument.Load(xmlFilePath);
param.Value = doc.CreateReader();
cmd.ExecuteNonQuery();
(連接和命令 object 省略)。
這里的重要建議是不要自己使用字符串 object,但正如您已經發現的那樣,ymmv ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.