我正在使用从自定义语言生成 WCF 服务的第三方框架。但是,当使用集合类时,这是生成的输出:
namespace MyNameSpace
{
using System;
using System.ServiceModel;
[MessageContract]
public class FindSomethingResponse
{
[MessageBodyMember(Order=1)]
public System.Collections.Generic.List<SomethingDC> response;
}
}
这很好,但在使用服务时会导致一些不希望的结果。这是上面生成的 XSD:
<FindSomethingResponse>
<ArrayOfSomethingDC>
<SomethingDC/>
<SomethingDC/>
<SomethingDC/>
...
</ArrayOfSomethingDC>
</FindSomethingResponse
“组节点”称为 ArrayOfSomethingDC,但我宁愿将其称为更有意义的东西(例如“Somethings”)。
据我发现,我必须使用 CollectionDataContract 属性来命名节点。但是,我处于无法真正更改生成类的结构的位置(因为它是在第三方框架中完成的),但我只能编辑上述方法。
有没有可能?