«ListViewWebPart» является «пространством имен», но используется как «тип» - PullRequest
1 голос
/ 25 октября 2010

Привет, я получаю сообщение об ошибке «ListViewWebPart» является «пространством имен», но используется как «тип»

Вот мой код, я не знаю, как это исправить какие-либо идеи?

namespace TestSolution
{

    [Guid("d3425822-6979-476d-a8cb-04de9521d1b4")]
    public class TestListViewWebPart : System.Web.UI.WebControls.WebParts.WebPart
    {


        public TestListViewWebPart()
        {
            this.ExportMode = WebPartExportMode.All;
        }



        protected override void CreateChildControls()
        {
            base.CreateChildControls();

            try
            {
                SPSite site = new SPSite("http://test.local/docs");
                SPWeb web = site.OpenWeb();
                SPList list = web.Lists["ListName"];



                ViewToolBar toolbar = new ViewToolBar();

                SPContext context = SPContext.GetContext(this.Context, list.Views["SomeView"].ID, list.ID, SPContext.Current.Web);

                toolbar.RenderContext = context;

                Controls.Add(toolbar);



                // Instantiate the web part
                ListViewWebPart lvwp = new ListViewWebPart();
                lvwp.ListName = list.ID.ToString("B").ToUpper();
                lvwp.ViewGuid = list.Views["SomeView"].ID.ToString("B").ToUpper();
                //lvwp.ViewGuid = list.DefaultView.ID.ToString("B").ToUpper();

                lvwp.GetDesignTimeHtml();
                this.Controls.Add(lvwp);
            }
            catch (Exception ex)
            {
                Label lbl = new Label();
                lbl.Text = "Error occured: ";
                lbl.Text += ex.Message;
                this.Controls.Add(lbl);
            }
        }


        protected override void Render(HtmlTextWriter writer)
        {
            EnsureChildControls();
            base.Render(writer);
        }
    }
}

1 Ответ

2 голосов
/ 25 октября 2010

Где-то в вашем приложении вы объявили пространство имен ListViewWebPart.В вашем коде теперь вы также объявляете переменную с тем же именем, что недопустимо.В общем случае у вас никогда не должно быть класса и пространства имен с одним и тем же именем, это в основном приведет к проблемам.

Если вы хотите избежать переименования, вам нужно указать полное пространство имен для вашей переменной, например:

YourNamespace.ListViewWebPart lvwp = new YourNamespace.ListViewWebPart();

или даже лучше:

global::YourNamespace.ListViewWebPart lvwp = new global::YourNamespace.ListViewWebPart();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...