Net 3.5 SP1并尝试将http://haacked.com/archive/2008/03/11/using-routing-with-webforms.aspx的示例副本实施到示例Web应用程序中,但我似乎遇到了一些问题。
我正在运行Windows Vista,IIS 7.0,集成模式。
以下是YSOD:
无法创建抽象类。
描述:在执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中的起源位置的更多信息。
异常详细信息: System.MissingMethodException:无法创建抽象类。
源错误:在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息。
堆栈跟踪: [MissingMethodException:无法创建抽象类。] System.RuntimeTypeHandle.CreateInstance(RuntimeType类型,Boolean publicOnly,Boolean noCheck,Boolean& canBeCached,RuntimeMethodHandle& ctor,Boolean& bNeedSecurityCheck)+0 System.RuntimeType.CreateInstanceSlow(Boolean publicOnly,Boolean fillCache)+86 System.RuntimeType.CreateInstanceImpl(Boolean publicOnly,Boolean skipVisibilityChecks,Boolean fillCache)+230 System.Activator.CreateInstance(Type type,Boolean nonPublic)+67 System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr,Binder binder,Object [] args,CultureInfo culture,Object [] activationAttributes)+1051 System.Activator.CreateInstance(Type type,BindingFlags bindingAttr,Binder binder,Object [] args,CultureInfo culture,Object [] activationAttributes)+111 System.Web.Configuration.HandlerFactoryCache..ctor(String type)+57 System.Web.HttpApplication.GetFactory(String type)+78 System.Web.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+229 System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)+155
我有一个看起来像这样的界面:
public interface IRoutablePage : IHttpHandler
{
UrlHelper Url { get; }
HtmlHelper Html { get; }
RequestContext RequestContext { get; set;}
}
我有一个继承此接口的抽象类(RoutablePage)和System.Web.UI.Page。
然后我有一个网页(附加到母版页),它继承了RoutablePage类。
我在网络配置中设置了路线,当我尝试访问http://local.url/pageName时,我会通过上述信息体验YSOD。
有人可以帮忙解决这个问题吗?
干杯
答案 0 :(得分:4)
我遇到了同样的问题。我能够在这个论坛上找到答案http://forums.asp.net/t/1272109.aspx
交叉发布帮助我的内容:
在Web.config中 - > system.webserver - > 处理程序,替换
<add name="UrlRoutingHandler"
preCondition="integratedMode" verb="*"
path="UrlRouting.axd"
type="System.Web.Routing.UrlRoutingHandler,
System.Web.Routing, Version=0.0.0.0,
Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
使用:
<add name="UrlRoutingHandler"
preCondition="integratedMode" verb="*"
path="UrlRouting.axd"
type="System.Web.HttpForbiddenHandler,
System.Web, Version=2.0.0.0,
Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" />
答案 1 :(得分:0)
问题已暂时解决。在IIS7下运行网站会导致上述问题,并使用cassini运行网站,每次运行都按预期运行,没有错误。
但是,有关此问题的任何进一步信息都将受到赞赏。