每当我尝试更新 .net 服务参考时,都会收到错误消息“表达式太长或无法编译”。我调出服务的 Reference.cs 以查看发生了什么,似乎 Visual Studio 正在使用名为 GeneratedEDMModel 的抽象类更新服务引用。基本上这个类包含一个极长的连接xml字符串,编译器似乎有问题。这似乎也很环保,因为团队中的其他人能够很好地更新服务并且没有生成此类。删除和创建新服务做同样的事情,我也尝试过使用 o-data 服务并获得相同的行为。
谁能阐明这是什么以及它是如何产生的?
我不可能将整个模型字符串粘贴到此处,但这里是写入参考文件的内容片段。const 字符串 ModelEdmx 似乎是 xml 形式的整个 EF 模型。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")]
private abstract class GeneratedEdmModel
{
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")]
private static global::Microsoft.Data.Edm.IEdmModel ParsedModel = LoadModelFromString(ModelEdmx);
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Services.Design", "1.0.0")]
private const string ModelEdmx = "<edmx:Edmx Version=\"1.0\" xmlns:edmx=\"http://schemas.microsoft.com/ado/2007/06/edm" +
"x\"><edmx:DataServices m:DataServiceVersion=\"1.0\" m:MaxDataServiceVersion=\"3.0\" x" +
"mlns:m=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\"><Schema " +
"Namespace=\"Model\" xmlns=\"http://schemas.microsoft.com/ado/2009/11/edm\"><Ent" +
"ityType Name=\"AttachmentType\"><Key><PropertyRef Name=\"AttachmentTypeId\" /></Key>" +
"<Property Name=\"AttachmentTypeId\" Type=\"Edm.Guid\" Nullable=\"false\" p6:StoreGener" +