在VS2008中Web应用程序中缺少程序集引用错误

时间:2010-07-06 21:45:02

标签: c# asp.net

我有一个名为ProfileInfo.aspx的页面,代码绑定看起来像这样 -

            using System;
            using System.Web;

            namespace myservice
            {
                public partial class ProfileInfo : System.Web.UI.Page
                {
                    protected void Page_Load(object sender, EventArgs e)
                    {

                        // if no postback but user is authenticated, grab info from database
                        if (!IsPostBack)
                        {
                            if (System.Web.Profile.**IsAnonymous** == false)
                            {

                            }


                        }


                    }

                    protected void btnSave_Click(object sender, EventArgs e)
                    {

                    }
                }
            }

我从Profile.IsAnonymous语句中收到错误,如下所示 -

名称空间'System.Web.Profile'中不存在类型或命名空间名称'IsAnonymous'(您是否缺少程序集引用?)

我做错了什么?我是否需要向Web应用程序项目添加.NET dll引用?我试图寻找System.Web.Profile但没有这样的DLL。请提前帮助和谢谢。

4 个答案:

答案 0 :(得分:1)

您不需要装配参考。

System.Web.Profile程序集中存在System.Web名称空间(默认情况下已添加到Web应用程序中)。

IsAnonymousProfileInfo类的属性。

这样做:

if (Profile.IsAnonymous == false)
{
    // your code here
}

取自MSDN:

  

当您的应用程序运行时,ASP.NET   创建一个ProfileCommon类   是一个动态生成的类   继承ProfileBase类。该   动态ProfileCommon类包括   从配置文件创建的属性   您指定的属性定义   你的应用配置。一个   这个动态ProfileCommon的实例   然后将class设置为的值   当前的配置文件属性   HttpContext并可用于页面   在你的申请中。

答案 1 :(得分:1)

您可以使用Context.Profile.IsAnonymous,但您的意图可能是从个人资料中读取值。

您无法在网络应用程序中直接使用个人资料。见How to assign Profile values?

答案 2 :(得分:0)

System.Web.Profile是一个名称空间,而不是一个类。您需要引用实际的配置文件来检查它是否是匿名的。

答案 3 :(得分:0)

尝试

Context.Profile.IsAnonymous