虽然ASP.NET Core存在但列名无效错误

问题描述 投票:0回答:1

我正在为会计软件(C# Winforms)设计一个在线商店(ASP.NET Core 6)。

我使用 ASP.NET Core 和 Razor 页面开始此操作。

我是这个领域的新手,缺乏经验。会计软件在SQL Server中有很多表,这些表之间是相互关联的。 我尝试仅对我的项目所需的表格进行建模。

但是当与所需的表通信时,出现以下错误:( .

列名“MobileNo”无效。
列名称“BankAccountNumber”无效。
列名称“BankBranch”无效。
列名称“出生日期”无效。
列名“BrithLocation”无效。
....

我知道这个错误是由于所需表与其他表的关系造成的。

因为在其他类似的情况下,当我定义第二个表和关系时,这个错误就解决了。

....
public string UserID { get; set; }
....
[ForeignKey(nameof(UserID))]
public virtual SalCustomer users { get; set; }
....

但是我遇到了一个与其他表(不需要的表)非常相关的表。

我觉得创建额外的模型是不对的,我不喜欢将它们添加到我的项目中。

EF中有没有办法忽略关系?不会导致会计软件出现问题?

因为我的项目中不需要这些关系。

例如:

客户表和税务单据表或支票表之间的关系......表太多了。

即使我不需要它们,在我的项目中创建所有表是否更好?

生成此错误的代码示例。

var accPerson = _context.AccPerson.SingleOrDefault(c => c.mobileNo == SD.userPh1);

我为我糟糕的英语表示歉意,并提前感谢您的宝贵意见。

我读了这篇文章 但我认为这些关系将被完全删除,这可能会导致会计软件出现问题。 我无法对数据库进行任何更改。 因为很多公司和软件都在使用这个数据库。

c# asp.net entity-framework asp.net-core sql-server-2008
1个回答
0
投票

正确的选择可能是创建一个 EF 项目首先创建数据库。 Visual Studio 将为您生成模型。因为您无法更新数据库行而忽略关系:您将在外键属性中放入哪些值?

© www.soinside.com 2019 - 2024. All rights reserved.