0

私はxmlファイルを扱っており、ここで例を見つけました。接続文字列を変更し、MyProductsという名前のテーブルを作成してから、App_Dataフォルダー内にProduct.xmlファイルを手動で配置しました。プログラムを実行すると、この例外が発生します

オブジェクト名「製品」が無効です。

デバッグ モードで、myxml 変数が null であることに気付きました。

              protected void Button1_Click(object sender, EventArgs e)
{
    string connetionString = null;
        SqlConnection connection;
        SqlCommand command ;
        SqlDataAdapter adpter = new SqlDataAdapter();
        DataSet ds = new DataSet();
        XmlReader xmlFile ;
        string sql = null;

        int product_ID = 0;
        string Product_Name = null;
        double product_Price = 0;

        connetionString = "Data Source=.\\sqlexpress;Initial Catalog=Northwind;Integrated Security=sspi";

        connection = new SqlConnection(connetionString);


        xmlFile = XmlReader.Create(Server.MapPath("~/App_Data/Product.xml"), new XmlReaderSettings());
        ds.ReadXml(xmlFile);
        int i = 0;
        connection.Open();
        for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
        {
            product_ID = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[0]);
            Product_Name = ds.Tables[0].Rows[i].ItemArray[1].ToString();
            product_Price = Convert.ToDouble(ds.Tables[0].Rows[i].ItemArray[2]);
            sql = "insert into Product values(" + product_ID + ",'" + Product_Name + "'," + product_Price + ")";
            command = new SqlCommand(sql, connection);
            adpter.InsertCommand = command;
            adpter.InsertCommand.ExecuteNonQuery();
        }
        connection.Close();
        Label1.Text = "ok";

    }
4

1 に答える 1