Aras学习笔记 (29) 使用Asp.net WebAPI创建Aras自定义Rest服务
1、首先用Visual Studio创建空的Asp.net Web应用项目,并选中Web API核心引用。

2、VS会自动创建WebApiConfig类,设定路由及默认的访问方式。

3、同时会创建个简单的路由例子,并定义Get、Post、Put、Delete四种方法,分别表示查询、新增、修改及删除操作。

4、编译后浏览结果如下:

5、新建一个Part Controller,实现查询Part列表及按ID查询Part信息的功能。
6、使用工具生成Part实体类。

7、在Part Controller的构造及析构函数中创建及释放Aras Innovator实例。
HttpServerConnection conn = IomFactory.CreateHttpServerConnection(ConfigurationHelper.GetInnovatorServerSiteURL(), ConfigurationHelper.GetDatabaseName(), ConfigurationHelper.GetUserAccount(), ConfigurationHelper.GetPassword());
if (conn != null)
{
Item logResult = conn.Login();
if (!logResult.isError())
{
innovator = new Innovator(conn);
}
}
if (innovator != null)
{
HttpServerConnection conn = (HttpServerConnection)innovator.getConnection();
conn.Logout();
}
8、在Get() 方法中提取Part全部列表并返回Dom文档。
string result = "";
try
{
Item item = innovator.newItem("Part", "get");
item = item.apply();
if (item != null)
{
result = item.dom.InnerXml;
}
}
catch (Exception ex)
{
}
return result;
9、在Get(string id)方法中安id查询Part内容并返回Dom文档。(可以用Or实现id对多字段的查询,以及使用condition进行对比等范围查询)
string result = "";
try
{
string aml = "<AML><Item type='Part' action='get'>";
//aml = aml + "<Or>";
aml = aml + "<id>"+ id +"</id>";
//aml = aml + "<name>"+ id +"</name>";
//aml = aml + "</Or>";
aml = aml + "</Item></AML>";
Item item = innovator.applyAML(aml);
if (item != null)
{
result = item.dom.InnerXml;
}
}
catch (Exception ex)
{
}
return result;
10、Part列表查询方式及结果。

11、查询单个Part方式及结果:

BTW,新增、修改、删除,及order by、top等功能会在以后的文章中涉及。

浙公网安备 33010602011771号