我在MVC4
网站上遇到了令人抓狂的情况。首先,您需要知道它使用Windows身份验证,我还想使用simplemembership
角色(但我认为这不起作用 - 但这不是我的问题的焦点)。基本上,该网站适用于我的dev
计算机(IIS
Express)和测试计算机(常规IIS
)。但它在生产环境中不起作用。我们收到错误“无法加载文件或程序集WebMatrix.WebData, version=2.0.0.0
。
WebMatrix.WebData
引用有CopyLocal = False
。 (这适用于dev
和test
。)如果我设置CopyLocal = True
,则身份验证会失败。具体来说,当您访问该网站时,它会尝试重定向到login.aspx
(显然不是MVC
组件)。所以,我的问题是为什么会发生这种情况?我该如何解决?
这是我在配置中的system.web元素下得到的内容:
<roleManager enabled="true">
<providers>
<clear/>
<add name="simple" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData"/>
</providers>
</roleManager>
<membership>
<providers>
<clear/>
</providers>
</membership>
<authentication mode="Windows" />
我已经玩了很多试图理解这个问题,但我真的不知道我在做什么这个配置部分/什么都可以做。我想知道在尝试使用SimpleRoleProvider
时是否有清除所有会员提供商的问题。 (我试图删除SimpleRoleProvider
,但这对问题没有影响。)