標準の .NET MVC には、Domain クラスと ModelView クラスがあります。さて、ASP.Net Web API では、(データを返すため) ModelView クラスは必要ないと思いますが、(シリアル化された) Domain クラスを直接返す必要がありますか、それとも間に何かが必要ですか?
// Domain class
public class User {
public int Id {get;set;}
public string FirstName {get;set;}
public string LastName {get;set;}
}
// inter class
public class ProductModel {
public int Id {get;set;}
public string FirstName {get;set;}
public string LastName {get;set;}
public string FullName {get {return String.Format("{0} {1}", FirstName, LastName);}}
}
// Controller V1 returns Product
public class UserController : ApiController
{
public Product GetProduct(int id) {...}
}
// Controller V2 returns ProductModel
public class UserController : ApiController
{
public ProductModel GetProduct(int id) {...}
}