Я пытаюсь следовать этому руководству , чтобы создать ASP. NET систему идентификации, но я продвинулся примерно на полпути вниз по странице, однако, когда мне удалось написать следующий код
public async Task<string> AddUser()
{
ApplicationUser user;
ApplicationUserStore Store = new ApplicationUserStore(new ApplicationDbContext());
ApplicationUserManager userManager = new ApplicationUserManager(Store);
user = new ApplicationUser
{
UserName = "bla",
Email = "o@gmail.com",
};
var result = await userManager.CreateAsync(user);
if (!result.Succeeded)
{
return result.Errors.First();
}
return "User Added";
}
Я получаю сообщение об ошибке System.Data.Entity.Core.MetadataException: Unable to load the specified metadata resource.
Я довольно часто искал в Интернете решение, однако большинство сообщений содержат файлы .edmx, которые не содержатся ни в этом руководстве, ни в моем решении. Строка подключения к моему серверу верна, так как я использовал ее в других проектах в прошлом. Где я ошибаюсь?
Моя строка подключения выглядит следующим образом:
<add name="PEARLEntities" connectionString="metadata=res://*/Models.UsersModel.csdl|res://*/Models.UsersModel.ssdl|res://*/Models.UsersModel.msl;provider=System.Data.SqlClient;provider connection string="data source=source;initial catalog=PEARL;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
DbContext основан на таблице в этой строке подключения, которая была создана с использованием следующего SQL
CREATE TABLE [dbo].[UsersTable](
[UserID] [int] IDENTITY(1,1) NOT NULL,
[UserName] [nchar](200) NOT NULL,
[Email] [nchar](200) NOT NULL,
[EmailConfirmed] [bit] NOT NULL,
[Password] [nchar](200) NOT NULL,
[Hospital] [nchar](200) NOT NULL,
[Salt] [nvarchar](500) NOT NULL,
CONSTRAINT [PK_UsersTable] PRIMARY KEY CLUSTERED
(
[UserID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO