未解析成员Csla.Security.UnauthenticatedPrincipal,Csla,异常

在调试 CSLA.Net 开源框架提供的 Project Tracker 项目 — 其中的 Web 项目 PTWebForms时,出现如下异常信息: [SerializationException: 未解析成员“Csla.Security.UnauthenticatedPrincipal,Csla, Version=3.8.2.0, Culture=neutral, PublicKeyToken=93be5fdc093e4c30”的类型。]

原因是:PTWebForms 项目运行在 development web server(Cassini)环境中,而不是IIS 环境中。由于ASP.NET Development Web Server的限制,不支持解析引用的程序集。 在使用定制的principal 对象时,必须运行Web Application在 IIS 环境下,这是ASP.NET Development Web Server 的限制,影响到所有的定制 principal 项目。

原文帖子:http://forums.lhotka.net/forums/t/157.aspx

 

解决这一问题的步骤:

1. 设置 PTWebForms 项目的Web Server属性,如下图所示。

2. 同时,还需要在 IIS Server上添加对应的应用程序目录(右键IIS默认网站--添加应用程序),指向PTWebForms 项目的文件夹。

3. 如果在Windows 7 环境下运行 VS 2010 – Web 项目 PTWebForms,还会出现权限的问题 — 无法在Web 服务器上启动调试,如下图所示。

以 Admin 帐号运行 VS 2010,然后再次运行 PTWebForms 项目,就正常了。

4 HTTP 错误 404.2 - Not Found。由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置

  单击IIS根目录--在右侧找到“ISAPI 和 CGI 限制”。在上面双击,找到对应的项目,设置为允许

 

posted @ 2013-01-02 10:01  星羽  阅读(661)  评论(0编辑  收藏  举报