从sql表中检索数据并显示在视图中
本文关键字:显示 视图 检索 sql 数据 | 更新日期: 2023-09-27 17:49:30
好的家伙,所以我新的MVC我已经构建模型和控制器插入数据到sql表,但现在我想检索这个数据到另一个视图。我的代码到目前为止:
所以我有一个名为"ProductTable"的sql表,其中有4个实体"ID"Name"Broi"answers"Cena"
CREATE TABLE [dbo].[ProductTable] (
[ID] INT IDENTITY (1, 1) NOT NULL,
[Name] NCHAR (10) NOT NULL,
[Broi] INT NOT NULL,
[Cena] NCHAR (10) NOT NULL,
PRIMARY KEY CLUSTERED ([ID] ASC)
);
,我已经在这个表中保存了一些数据
我有一个模型类
[Table("ProductTable")]
public class ProductTable
{
//public int ID { get; set; }
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
public string Name { get; set; }
public int Broi { get; set; }
public int Cena { get; set; }
}
和DbContext
的另一个模型类public class DefaultConnection : DbContext
{
public DbSet<ProductTable> Products { get; set; }
}
控制器从视图中检索数据并将其传递给模型
public ActionResult Table()
{
return View(new ProductTable());
}
[HttpPost]
public ActionResult Table(ProductTable product)
{
if (!ModelState.IsValid)
{
return View(product);
}
using (var contex = new DefaultConnection())
{
contex.Products.Add(product);
contex.SaveChanges();
}
return View();
}
和一个带有TextBoxes和submit按钮的View到这个控制器但现在我想检索保存的数据,并将其显示到另一个视图。我已经尝试过了,但是我得到了一个错误:
ProductTable上的'Cena'属性不能设置为'String'值。您必须将此属性设置为类型为"Int32"的非空值
private DefaultConnection db = new DefaultConnection();
public ViewResult TableData()
{
return View(db.Products.ToList());
}
在数据库表中,列cena
为NChar
类型,列model
为type int
类型
这应该是如何工作的
//Change this
public int Cena { get; set; }
//to this
public String Cena { get; set; }