我有一个空的MVC3项目。我没有添加控制器或任何视图。我在MVC项目中唯一添加的是模型 - > Employee.cs
我在这个课程中有这些属性:
[Display(Description="The admin systems group number")]
public string GroupNumber { get; set; }
[Display(Description = "The Tax ID for the group (No Dashes)")]
public string TaxId { get; set; }
现在我想通过WCF服务添加此Employee的记录。我在名为EmployeeHost
的同一解决方案中创建了另一个项目这些是 IService1.cs 中的ServiceContract和DataContract:
namespace EmployeeHost
{
[ServiceContract]
public interface IService1
{
[OperationContract]
string GetData(int value);
[OperationContract]
Employee AddEmployee(Employee emp);
[OperationContract]
Employee UpdateEmployee(Employee emp);
}
[DataContract]
public class Employee
{
[DataMember]
public string GroupNumber { get; set; }
[DataMember]
public string TaxId { get; set; }
}
}
这就是我在界面中的内容: Service1.cs
namespace EmployeeHost
{
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public void AddEmployee(Employee emp)
{
//Add something to DB for emp.
}
public void UpdateEmployee (Employee emp)
{
//Update something for employee emp.
}
}
}
这是我到目前为止所拥有的。现在我想使用DBContext(EF)添加记录。我的下一个过程应该是什么?
答案 0 :(得分:1)
更简单的方法是:
WCF:
AddEmployee
调用插入EmployeeHost.Employee
所需的EF代码。MVC:
Model.Employee
转换为EmployeeHost.Employee
,使最后一个操作调用WCF。同样,正如我在评论中所说,除了WCF是一个远程服务,部署在与Web应用程序不同的服务器中之外,这对IMHO来说没有多大意义。