select
クエリを使用して SQL Server 2008 からデータを取得し、それを XML ファイルに保存する C# Web サービスを作成したいと考えています。注:LinQを使用しています。
どうやってやるの?
このコードを使用しましたが、より多くのエラーがありました。
[WebMethod]
public bool Search(string XmlSearch)
{
using (var MyCon = new MainContextDataContext())
{
MyCon.Connection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["HQ_TestConnectionString"].ConnectionString;
XElement SearchCust = XDocument.Parse(XmlSearch).Root.Elements().First();
string AccountNumber = SearchCust.Element("Customer").Attribute("AccountNumber").Value;
string Phone = SearchCust.Element("Customer").Attribute("PhoneNumber").Value;
string Name = SearchCust.Element("Customer").Attribute("FirstName").Value;
if (MyCon.Customers.Where(i => i.AccountNumber == AccountNumber).Count() > 0)
{
SqlConnection MyConn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["HQ_TestConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("SELECT customer.AccountNumber, ShipTo.Address, ShipTo.Address2 FROM Customer FULL OUTER JOIN ShipTo ON customer.AutoID = ShipTo.AutoID WHERE customer.AccountNumber = " + AccountNumber, MyConn);
cmd.Connection.Open();
object value = cmd.ExecuteScalar();
MyConn.Close();
SqlDataReader Reader = cmd.ExecuteReader();
string SRD = string.Empty;
if (Reader.HasRows)
{
if (Reader.Read())
{
SRD = Reader.ToString();
}
}
Reader.Close();
System.Xml.XmlDocument Xdoc = new System.Xml.XmlDocument();
Xdoc.InnerXml = SRD;
Xdoc.Save("d:\\xmltest.xml");
}
return false;
}
}