【问题标题】:C# ASP.NET MVC 5 and SQL ServerC# ASP.NET MVC 5 和 SQL Server
【发布时间】:2018-05-29 11:33:28
【问题描述】:

我在 ASP.NET MVC 5 控制器中遇到问题:

public ActionResult Product()
{
    return View(db.GetEntity(1).ToList());
}

这是我在 SQL Server 中的过程:

ALTER PROCEDURE [dbo].[GetEntity]  
    (@EntityTypeID INT) 
AS 
    SELECT * 
    FROM Entity 
    INNER JOIN EntityType ON Entity.EntityTypeID = EntityType.EntityTypeID 
    WHERE EntityType.EntityTypeID = @EntityTypeID

这是我的错误:

数据读取器与指定的“Te​​lepatyWebsitedbModel.GetEntity_Result”不兼容。类型的成员“EntityTypeID1”在数据读取器中没有同名的对应列。

有人可以帮帮我吗?

谢谢。

【问题讨论】:

  • 您运行以执行该 SQL 语句的 C# 是什么。该错误意味着问题在于它是如何工作的,而不是任何一个。
  • 更新您的复杂类型。并查看您的列和使用的属性是否匹配。
  • @War db.GetEntity(1) 似乎是对存储过程的 C# 调用,对吧?
  • db.GetEntity(1) 似乎是对存储过程的 C# 调用,对吧?是的
  • 您没有与我们分享足够的信息。你用的是EF吗?如果是这样,那么标记您的问题并显示您的模型中的内容。

标签: c# sql-server asp.net-mvc-5


【解决方案1】:

看起来您正在重新发明轮子。 考虑使用 ORM(对象关系管理器),此类框架旨在为您处理此类任务。

例如:Entity Framework 是基于 .Net 的解决方案的流行选择,有助于帮助新用户了解数据库建模和实体。

https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    • 2021-10-27
    • 2015-08-13
    • 1970-01-01
    • 2010-11-03
    • 1970-01-01
    相关资源
    最近更新 更多