-2

我使用了以下代码,但它给出的异常为 System.NullReferenceException: Object reference not set to an instance of an object。谁能纠正

   try
    {
         SPWeb mySite = SPContext.Current.Web;
        SPWebCollection subSites = mySite.Webs;
        string currentTemplate = mySite.WebTemplate;

        string siteUrl = TextBox1.Text.ToString();
        string siteTitle = TextBox2.Text.ToString();
        string siteDescription = TextBox3.Text.ToString();

        subSites.Add(siteUrl, siteTitle, siteDescription, 1033,
           currentTemplate, true, false);

        lblMessage.Text = "Site created.";
    }
    catch (Exception ex)
    {
        lblMessage.Text = "Some error" + ex;
    }
4

2 回答 2

2

如果您从 WPF 中调用它,则必须通过 ServerURL 创建 SPweb 对象。

代替SPWeb mySite = SPContext.Current.Web;

尝试SPWeb mySite = new SPSite("http://demo2010site")

于 2012-11-29T09:28:21.957 回答
0

您正在 SharePoint 网站之外运行您的代码。SPContext.Current在这种情况下为空。

如果没有更多详细信息,则无法针对该异常提出任何解决方案。

于 2012-11-29T08:55:15.020 回答