我已按照以下步骤操作
- 在 VS 2012 中创建了一个新的 C# 解决方案
- 添加了用于从现有数据库创建模型的 ac# 类库项目
- 将现有数据库中的新 EDMX 文件添加到上述项目
- 成功搭建项目
- 添加了用于创建存储库类的新 C# 类库项目
- 添加了对步骤 1 中创建的库项目的引用
- 添加了一个新类“XyzRepository”,它具有 Web 服务方法所需的 CRUD 操作(用 L2E 编写)
- 构建成功
- 创建了一个 WebAPI 模板类型的新 MVC 4 项目并添加了一个 ApiController
- 在 Api 控制器内部创建了一个返回类型为 HttpResponseMessage 的 HttpPost 方法“UpdateStatus”
- 实例化 XyzRepository 并调用 _respository.UpdateStatus 一个布尔返回类型方法
- 使用 Content = new StringContent(""); 构造响应
- 返回响应
- 使用来自 Internet 应用程序模板类型的另一个 MVC 4 项目的 HttpClient 使用 WebAPI。
- 运行 MVC 4 页面以查看结果,一切正常。
现在的问题
我在几个论坛上看到了大量的讨论,其中 Web API 与存储库模式集成,这些存储库模式使用代码优先方法与 POCO 类交互。这种方法在模型更改等时使用 IoC、DI 和 DatabaseCreation。
因为我有一个现有的数据库,所以我使用了 Database First 方法。但我不完全确定我的设计在并发性、性能等方面是否存在任何缺陷。因为所有示例都使用了代码优先的方法,这让我感到紧张。
我想听听专家的意见,这样我就不会在周期的后期感到惊讶。