我无法在MVC应用程序

时间:2017-08-07 05:12:39

标签: c# asp.net-mvc dbcontext

数据库中存在未使用的表。现在我想用它。 我试图在其中插入一行,但我在Add方法上出错。

  

错误CS1061'GalleryContext'不包含的定义   'tblPayPalTransactions'并没有扩展方法   'tblPayPalTransactions'接受第一个类型的参数   可以找到'GalleryContext'(你是否错过了使用指令或   集会   参考?)SurfJohn C:\ inetpub \ wwwroot \ SurfJohn \ Controllers \ HomeController.cs 350

这是错误指向的行(添加(模型)):

   // Save record to database

    db.tblPayPalTransactions.Add(model);
    db.SaveChanges();

这是我的Home Controller类的顶部,适用于现有的表。

  DAL.GalleryContext db = new DAL.GalleryContext();

所以我去找GalleryContext。但我似乎无法添加我创建的模型PayPalTransactions.cs,其中我已经为表“tblPayPalTransactions”添加了所有字段定义。我可以操纵“Photo”表,而不是tblPayPalTransactions:

namespace SurfJohn.DAL
{
    public class GalleryContext : DbContext
    {
        public GalleryContext() : base("DefaultConnection")
        {
            Database.SetInitializer<GalleryContext>(null);
        }

        public DbSet<Photo> Photos { get; set; }

    }
}

这是数据库第一次设计。

修改 如果我将光标放在db.tblPayPalTransactions.Add(model)上; (表格用红色加下划线),我为这些可能的修复提供了以下三种选择:

在GalleryContext中生成字段'tblPayPalTransactions

生成只读字段'GalleryContext.tblPayPalTransactions'

生成属性'GalleryContext.tblPayPalTransactions'

1 个答案:

答案 0 :(得分:2)

您需要在DbSet<PayPalTransactions>上创建DbContext类型的属性才能使其正常运行。你已经对Photos做了同样的事情。

public DbSet<PayPalTransactions> tblPayPalTransactions { get; set; }