-2

私は新しい開発者であり、このチュートリアルに従ってC#でWebサービスを開発しようとしています。そのチュートリアルで説明されているようにすべてを実行しましたが、Northwindデータベースからデータを取得できず、[呼び出し]ボタンを押すと次のページが表示されました。 ここに画像の説明を入力してください

チュートリアルでわかるように、私はConnectionStringをweb.configファイルに追加しませんでした。私はそれをすべきですか?

私のコード:

public class WSGetCustomerCountryWise : System.Web.Services.WebService
{
    public WSGetCustomerCountryWise()
    {

        //Uncomment the following line if using designed components 
        //InitializeComponent(); 
    }

    [WebMethod(Description = "It will generate Customer List, CountryWise")]
    public System.Xml.XmlElement
        GetCustomerCountryWise(string sCountry)
    {
        string sConn = ConfigurationManager.ConnectionStrings["connStr"].ToString();
        string sSQL = "select CustomerId, CompanyName, ContactTitle, City from Customers where country = '"+sCountry+"'";
        SqlConnection connCustomer = new SqlConnection(sConn);
        DataSet dsCustomer = new DataSet();
        SqlDataAdapter sda = new SqlDataAdapter(sSQL, sConn);
        sda.Fill(dsCustomer);

        System.Xml.XmlDataDocument xdd = new System.Xml.XmlDataDocument(dsCustomer);
        System.Xml.XmlElement docElem = xdd.DocumentElement;
        return docElem;

    }

}
4

2 に答える 2

2

を使用して接続文字列をロードしようとしてConfigurationManager.ConnectionStrings["connStr"].ToString()いますが、構成(= web.config)に追加しなかったため、追加する必要があります。

于 2012-05-14T05:50:53.330 に答える
0

手始めに; はい、web.configに接続文字列を追加する必要があります。それ以外の場合は、例外がスローされます。ToString()オブジェクトはできませんnull

コードが壊れている場所を見つけるには:?で始まる行にブレークポイントを設定するとどうなりstring sConnますか?'debugging'でバグを見つけることができるはずです...

于 2012-05-14T05:51:00.617 に答える