首先使用 MVC EF 代码,新项目可以带有帐户功能(登录、注册等)。我将数据库连接字符串从指向 App_Data 文件夹中的 mdf 文件更改为使连接字符串指向 SQL Server 实例。 ASP.NET 特定表是在 SQL Server 实例中创建的。
现在,当下面这行自动生成的代码运行时:
var result = await SignInManager.PasswordSignInAsync(model.Email,
model.Password, model.RememberMe, shouldLockout: false);
它抛出一个异常:
The specified cast from a materialized 'System.Guid' type to the 'System.String' type is not valid.
数据库字段和域模型是Guid。任何帮助,将不胜感激。
谢谢
最佳答案
在我的例子中,我的实体使用 Guid 作为 ID,但在数据库中 ID 是 nvarchar(300),我通过将 nvarchar(300) 更改为 解决了这个问题>uniqueidentifier,但不要在不知道这可能对您的数据库/应用程序产生影响的情况下执行此操作,在我的情况下它很简单并且工作正常。
如果其他人遇到同样的问题,我希望这对您有所帮助。
关于c# - 从具体化 'System.Guid' 类型到 'System.String' 类型的指定转换无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35810285/