Asp.net mvc 尝试访问EF CodeFirst数据库时出现无效列名错误
我正在尝试使用以下代码访问EF表Asp.net mvc 尝试访问EF CodeFirst数据库时出现无效列名错误,asp.net-mvc,asp.net-web-api,Asp.net Mvc,Asp.net Web Api,我正在尝试使用以下代码访问EF表 public void UserLogin(string UserId, string Password) { var ErrorMessage = ""; int ErrorCode = 0; var result = db.Users.Where(x => (x.LoginId.Equals(UserId) && x.Password.Equals(
public void UserLogin(string UserId, string Password)
{
var ErrorMessage = "";
int ErrorCode = 0;
var result = db.Users.Where(x => (x.LoginId.Equals(UserId) && x.Password.Equals(Password)));
var favourites = db.Favourites.Where(x => x.LoginId.Equals(UserId)).ToList();
}
我使用了table[table name]选项,但仍然显示相同的错误
在收藏夹表中,我遇到以下错误-
{"Invalid column name 'LoginId'.\r\n
Invalid column name 'LoginId'.\r\n
Invalid column name 'LoginId'.\r\n
Invalid column name 'Name'.\r\n
Invalid column name 'StockExchange'.\r\n
Invalid column name 'Symbol'."}
这就是我最喜欢的模特的样子-
[Table("Favourites")]
public class Favourites
{
[Key]
public int FavId { get; set; }
public String LoginId { get; set; }
public String LastTradePriceOnly { get; set; }
public String Name { get; set; }
public String StockExchange { get; set; }
public String Symbol { get; set; }
public String MarketCapitalization { get; set; }
}
这是我对表格的数据定义-
CREATE TABLE [dbo].[Favourites] (
[FavId ] INT IDENTITY (1, 1) NOT NULL,
[ LoginId] NVARCHAR (MAX) NULL,
[LastTradePriceOnly] NVARCHAR (MAX) NULL,
[ Name] NVARCHAR (MAX) NULL,
[ StockExchange] NVARCHAR (MAX) NULL,
[ Symbol ] NVARCHAR (MAX) NULL,
[MarketCapitalization] NVARCHAR (MAX) NULL,
CONSTRAINT [PK_Favourites] PRIMARY KEY CLUSTERED ([FavId ])
);
我做错了什么?如何修复此错误?您的列名中有空格 [LoginId]、[Name]、[StockExchange]和[Symbol]在开始或结束处有空格,因此EF无法映射它 更改列名以排除空格,或者在实体类中显式映射它们 您可以使用DataAnnotation手动映射列,如
[Column(" LoginId")]
你的问题是什么?@Verdamelt对不起,我刚刚更新了这个问题