c# - 从具体化 'System.Guid' 类型到 'System.String' 类型的指定转换无效

标签 c# asp.net asp.net-mvc entity-framework code-first

首先使用 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/

相关文章:

c# - LINQ to SQL 查询以确定值是否以数字开头

asp.net - JQuery Mobile 日期选择器不在 Chrome 中显示日期

asp.net-mvc - 使用区域时.NET 4.5 MVC RouteCollection.LowercaseUrls 中断

c# - 使用 WebBrowser WPF 控件以编程方式填写一些 Web 表单

c# - 是否可以通过 COM 公开 DateTime 字段?

c# - 如何解析像 '/aaa/bbb/ccc/ddd' 这样的字符串?

asp.net - 响应头上次修改未更新

asp.net - 在 ASP.NET 中诊断 "Thread was being aborted."

c# - ASP.NET MVC 模型嵌套路由

asp.net-mvc - 使用 ViewModel 和对 System.Web.Mvc 的引用是否违反了 MVC 模式?