ASP.NET Web API 2.0共享模型(适用于API和客户端)



我是ASP.NET Web API 2.0的新手。根据我们的要求,我们需要拥有2个客户端(Web应用程序)另一个PHP(Web应用程序)的Web API。

没有Web API的代理概念:

,我们决定可以为Web API和.NET客户端提供共享模型。但是PHP客户端需要再次创建模型类(请求和响应)才能在PHP中使用。

它可能最终会出现一些不一致。.支持模型在Web API中发生了更改,需要手动更新PHP类模型。任何人都有解决此问题的解决方案?

好吧,我建议您使用数据传输对象项目,这样您就可以存储所有分享的模型。

还手动修复了它的猴子东西:)我建议您编写简单的映射器,该映射器将在Post Build and intust build and forte PHP文件夹中使用生成的文件运行由于您的DTO只是属性,所以可以说您有

public class SampleDto
    {
        public int Id { get; set; }
        public int Title { get; set; }
    }

使用代码

var prop = typeof (SampleDto).GetProperties();
var php = "class " + typeof(SampleDto).Name + " {n";
foreach (var propertyInfo in prop)
{
   php += "public $" + propertyInfo.Name + "; n";
}
php += "}";

您将获得PHP类

class SampleDto {
   public $Id; 
   public $Title; 
}

现在,您可以继续实现并创建您在Post Build(在C#项目中)运行的EXE文件,并且可以从库中加载所有DTO对象,并将PHP类写入您的文件夹

最新更新