1

忙着学习MVC 3和EF...

我有一个现有的数据库,然后创建与我的数据库表(代理)对齐的模型:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
using System.ComponentModel.DataAnnotations;

namespace Dataset_Test.Models
{
    public class Agency
    {

        public int AgencyID { get; set; }
        [Required(ErrorMessage="Give me a name.")]
        [StringLength(5)]
        [MinLength(2)]
        public string AgencyName { get; set; }

    }

}

我的 DAL 课程:

public class DBContext: DbContext
    {
        public DbSet<Person> Persons { get; set; }
        public DbSet<Agency> Agency { get; set; }
    }

使用控制器生成器弹出窗口创建控制器和视图然后运行代码后:

private DBContext db = new DBContext();

        //
        // GET: /Agency/

        public ViewResult Index()
        {
            return View(db.Agency.ToList());
        }

我收到一个错误,它根本无法找到表,因为 EF 正在自动查找表(dbo.Agencies)但我已将我的模型类声明为代理,我的问题是如何以及在哪里设置模型的表名称引用应该链接到,即它应该寻找 dbo.Agency 而不是 dbo.Agencies?

布局: 在此处输入图像描述

4

1 回答 1

2

您需要添加一个

[Table("Agency")]

归因于您的代理类

于 2012-07-26T10:14:16.600 回答