0

標準の .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) {...}
}
4

1 に答える 1

0

API でドメイン モデルを公開することは、ほとんど良い考えではありません。

API を使用するのがあなただけで、更新をクライアントとサーバーにまったく同じ頻度で展開することが確実な場合は、この近道を利用できるかもしれませんが、私はそうしません。それをお勧めします。

于 2012-11-07T21:38:05.903 に答える