创建Controller时不支持的上下文类型

时间:2013-10-25 18:40:04

标签: c# asp.net-mvc entity-framework asp.net-mvc-4

.net的新手不确定我在这里做错了什么。我创建了一个c#API项目,然后使用了ADO.Net实体映射。看起来它基于我的所有表为模型创建了正确的.cs文件。我想下一步是创建一个控制器,但是当发生这种情况时我收到一条错误消息。

模型1

namespace GoogleMapsAPIv1.Models
{
    using System;
    using System.Collections.Generic;

    public partial class Table1
    {
        public string COUNTRY_ID { get; set; }
        public string PROVINCE_ID { get; set; }
        public string CITY { get; set; }
        public string COUNTY { get; set; }
        public string POSTAL_CODE { get; set; }
        public Nullable<decimal> LATITUDE { get; set; }
        public Nullable<decimal> LONGITUDE { get; set; }
        public Nullable<decimal> DISTANCE_CACHED { get; set; }
        public string FIPS_PROVINCE_CODE { get; set; }
        public string FIPS_COUNTY_CODE { get; set; }
        public Nullable<System.DateTime> CREATED_DATE { get; set; }
        public Nullable<System.DateTime> LAST_MODIFIED_DATE { get; set; }
        public string SPATIAL_DATA { get; set; }
        public string TIMEZONE_ID { get; set; }
        public Nullable<int> GMT_OFF_SET { get; set; }
        public string SPATIAL_BOUNDARY { get; set; }
        public int DK_COUNTRY_ID { get; set; }
    }
}

我将此模型设置为Model Class且Data Context类为

时得到的错误消息
Unsupported Context Type 

我使用的模板是带有读/写操作的API控制器,使用Entity framework

1 个答案:

答案 0 :(得分:3)

以下是我用于创建简单MVC API应用程序的步骤

  1. 打开visual studio 2012并创建ASP.NET MVC v4应用程序
  2. 选择API
  3. 在解决方案资源管理器位置的Model目录中右键单击并选择“添加”&gt; '新项目'
  4. 从“添加新项”中找到ADO.Net实体数据模型 5。通过ADO.NET向导,它将允许您生成与SQL Server的连接
  5. 选择您要为
  6. 构建模型的表格
  7. 对模型进行装箱后,右键点击“控制器”,然后选择添加&gt;控制器
  8. 使用Entity Framework选择模板-'API控制器,具有读/写操作'        模型类 - 使用ADO.NEt实体数据模型构建的模型之一       数据上下文类 * *不要从上面选择相同的模型选择带有数据库+实体名称的选项
  9. 从这里我可以打电话给网址;

    www.application.com/api/TestController/?id=1

    这成功地从我的数据库中恢复了数据。