私はC#とSharepointプログラミングに非常に慣れていません。
WebPartとそれに使用されるC#について学習しようとしています。リストのアイテムを追加/削除するビジュアルWebパーツを作成しました。リストにアイテムを追加するボタンクリックで呼び出されるメソッドがあります。
これが私の方法です:
public void TestMethod()
{
using (SPSite oSPSite = SPContext.Current.Site)
{
using (SPWeb ospweb = oSPSite.OpenWeb())
{
SPList lst = ospweb.Lists["CusomList1"];
SPListItem item = lst.Items.Add();
item["Item1"] = txt1.Text;
item["Item2"] = txt3.Text;
item["Item3"] = Convert.ToInt32(txt3.Text);
item["Item4"] = txt4.Text;
item.Update();
}
}
}
これは次のように呼ばれます。
protected void Button1_Click(object sender, EventArgs e)
{
TestMethod();
}
これは問題なく動作します。同じこと(アイテムの追加)を行う2番目のWebパーツで同じメソッドを使用しようとしています。
ただし、同じプロジェクトに新しいVisual Webパーツを追加し、クラスとメソッドを次のように呼び出した場合
protected void Button1_Click(object sender, EventArgs e)
{
VWP1 NewClass = new VWP1();
NewClass.TestMethod();
}
この[追加]ボタンは機能せず、デバッグを実行すると、次のメッセージが表示されます。
オブジェクト参照がオブジェクト インスタンスに設定されていません。
誰かが私に何をすべきか教えてもらえますか?