C# 自定义成员资格提供程序无法加载文件或程序集
我想我可能只是错过了一些小东西,但我不确定它在哪里。我正在尝试实现一个自定义的成员资格提供程序,以便可以将成员资格API用于asp.net mvc应用程序。我正在创建的自定义成员资格提供程序是为存储在web.config文件的credentials部分中的用户创建的。我收到的错误消息是: 无法加载文件或程序集“CompanyName.App_Code.Membership”或其依赖项之一。系统找不到指定的文件 我的代码如下所示: web.configC# 自定义成员资格提供程序无法加载文件或程序集,c#,asp.net,asp.net-mvc,asp.net-membership,assemblies,C#,Asp.net,Asp.net Mvc,Asp.net Membership,Assemblies,我想我可能只是错过了一些小东西,但我不确定它在哪里。我正在尝试实现一个自定义的成员资格提供程序,以便可以将成员资格API用于asp.net mvc应用程序。我正在创建的自定义成员资格提供程序是为存储在web.config文件的credentials部分中的用户创建的。我收到的错误消息是: 无法加载文件或程序集“CompanyName.App_Code.Membership”或其依赖项之一。系统找不到指定的文件 我的代码如下所示: web.config <membership default
<membership defaultProvider="WebConfigMembershipProvider">
<providers>
<clear />
<add name="WebConfigMembershipProvider"
applicationName="CompanyName"
Description="Web Configuration Membership Provider"
type="CompanyName.App_Code.Membership.WebConfigMembershipProvider, CompanyName.App_Code.Membership" />
</providers>
</membership>
WebConfigMembershipProvider.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.Configuration;
using System.Configuration;
using System.Web.Helpers;
namespace CompanyName.App_Code.Membership
{
public class WebConfigMembershipProvider : MembershipProvider
{
public override bool ValidateUser(string username, string password)
{
Configuration webConfiguration = WebConfigurationManager.OpenWebConfiguration(path: "~");
AuthenticationSection authenticationSection = (AuthenticationSection)webConfiguration.GetSection("system.web/authentication");
FormsAuthenticationUser storedUser = authenticationSection.Forms.Credentials.Users[username];
return storedUser != null && Crypto.VerifyHashedPassword(storedUser.Password, password);
}
/*The rest of MembershipProvider's methods implemented here throwing NotImplementedException*/
在我的登录控制器中调用Membership.ValidateUser时发生错误。看起来
类型可能配置不正确。在我的项目中,我有这样的东西
type="CompanyName.App_Code.Membership.WebConfigMembershipProvider, CompanyName"
这是假设在.csproj
文件中还有CompanyName
作为根命名空间
<RootNamespace>CompanyName</RootNamespace>
CompanyName
另一方面,CompanyName.Membership.WebConfigMemberShipProvider
本身看起来不错<命名空间中的code>App_code
在我看来有点奇怪。这正是我的喜好
您还可以尝试清理、重新构建,然后重试。员工成员资格提供商在哪里?ha haUnlike论坛网站,我们不使用“谢谢”,或“感谢任何帮助”,或签名。见”。
<RootNamespace>CompanyName</RootNamespace>