【发布时间】:2012-05-29 15:20:44
【问题描述】:
类似于:member names cannot be the same as their enclosing type,除了我不能更改元数据,我想完全忽略这个类。
我正在尝试在 Visual Studio 2010 中添加服务引用,但出现以下错误。
自定义工具“DataServiceClientGenerator”失败。数据服务 客户端代码生成失败:指定的架构无效。错误: (0,0) : 错误 0042: 名称 foo 不能用于类型 Microsoft.Crm.Sdk.Data.Services.foo。成员名称不能是 与它们的封闭类型相同..
我知道这个错误是因为有人在对象foo 中命名了一个字段foo,但我无法更改它..
如果无法在 CRM 中进行任何更改,我如何生成我的服务参考?
我曾想过下载$metadata,然后删除有问题的类型,然后保存它(因为无论如何我都不会使用该类型)。但我不知道如何让它发挥作用,因为它并不太直接。
我已尝试使用 C# 和 VB.NET 进行服务引用,但均未成功,理想情况下,这将是一个适用于两者的解决方案,但此时我愿意接受仅适用于其中一个的解决方案.
【问题讨论】:
-
微软解决方案中居然有一个名为 foo 的成员字段?大声笑:-)
-
@TomerW 不,我们的 CRM 解决方案是定制的,包括一些额外的类,
foo表示具有foo字段的类。根据tools.ietf.org/html/rfc3092foo被用作元句法变量,没有任何适当的解释或定义,通常是当变量的实际含义对上下文范围没有意义时。 -
是的,我知道 foo bar,我认为你没有更改异常消息 :)
-
@TomerW 这似乎是一个奇怪的假设,实际的错误消息包含客户公司的名称作为字段的一部分,因此我删除了此内容并替换为
foo。
标签: .net visual-studio-2010 dynamics-crm-2011 odata