枚举值到Web服务?

时间:2013-08-22 13:23:14

标签: web-services http

我的困境基本上是如何在两个应用程序之间共享枚举。

用户通过Web上的前端应用程序上载文档。此应用程序调用后端应用程序的Web服务并将文档传递给它。后端应用程序保存文档并在Document表中插入一行。

文档类型(7种可能的文档类型:Invoice,Contract等)作为参数传递给Web服务的UploadDocument方法。问题是,该参数的类型(和可能的值)应该是什么?

由于您需要在两个应用程序中对这些值进行硬编码,我认为它是O.K.使用描述性字符串(Invoice,Contract,WorkOrder,SignedWorkOrder)。

在第一个应用程序中创建DocumentTypes枚举并在第二个应用程序中重现它,然后将相应的整数值传递给它们之间的Web服务可能是更好的方法吗?

2 个答案:

答案 0 :(得分:0)

我只能谈论.net,但如果你有一个ASP.net Web服务,你应该可以直接添加一个枚举。

当您在客户端应用程序中使用“添加Web引用”时,生成的类应包含该枚举

但这是我的头脑,我很确定我过去已经做过,但我不能肯定地说。

答案 1 :(得分:0)

如果您使用的是.NET,则可以在后端创建枚举。然后在该后端Web服务的前端创建Web引用。然后,它将获取枚举并将其暴露在前端,同时仅将其定义在一个位置。

使用枚举的优点是可以在前端公开那些,避免了用户传递错误值的问题。如果你要使用一个整数,那不是很友好,你必须在某个时候检查它。字符串的类似问题。因此,如果您有一组众所周知的值,我强烈建议您使用枚举。