第 21 行位置 4 上的'xs:group'开始标记与 'xr:group' 的结束标记不匹配



我正在处理MVC3项目,当部署到生产中时,我收到了这个错误

The 'xs:group' start tag on line 21 position 4 does not match the end tag of 'xr:group'. Line 30, position 5.

下方的Stacktrace

    at System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
   at System.Xml.XmlTextReaderImpl.ThrowTagMismatch(NodeData startTag)
   at System.Xml.XmlTextReaderImpl.ParseEndElement()
   at System.Xml.XmlTextReaderImpl.ParseElementContent()
   at System.Xml.Schema.XmlSchema.Read(XmlReader reader, ValidationEventHandler validationEventHandler)
   at System.Data.EntityModel.SchemaObjectModel.Schema.SomSchemaSetHelper.AddXmlSchemaToSet(XmlSchemaSet schemaSet, XmlSchemaResource schemaResource, HashSet`1 schemasAlreadyAdded)
   at System.Data.EntityModel.SchemaObjectModel.Schema.SomSchemaSetHelper.ComputeSchemaSet(SchemaDataModelOption dataModel)
   at System.Data.Common.Utils.Memoizer`2.Result.GetValue()
   at System.Data.Common.Utils.Memoizer`2.Evaluate(TArg arg)
   at System.Data.EntityModel.SchemaObjectModel.Schema.Parse(XmlReader sourceReader, String sourceLocation)
   at System.Data.EntityModel.SchemaObjectModel.SchemaManager.ParseAndValidate(IEnumerable`1 xmlReaders, IEnumerable`1 sourceFilePaths, SchemaDataModelOption dataModel, AttributeValueNotification providerNotification, AttributeValueNotification providerManifestTokenNotification, ProviderManifestNeeded providerManifestNeeded, IList`1& schemaCollection)
   at System.Data.Metadata.Edm.EdmItemCollection.LoadItems(IEnumerable`1 xmlReaders, IEnumerable`1 sourceFilePaths, SchemaDataModelOption dataModelOption, DbProviderManifest providerManifest, ItemCollection itemCollection, Boolean throwOnError)
   at System.Data.Metadata.Edm.EdmItemCollection.Init(IEnumerable`1 xmlReaders, IEnumerable`1 filePaths, Boolean throwOnError)
   at System.Data.Metadata.Edm.MetadataCache.EdmMetadataEntry.LoadEdmItemCollection(MetadataArtifactLoader loader)
   at System.Data.Metadata.Edm.MetadataCache.LoadItemCollection[T](IItemCollectionLoader`1 itemCollectionLoader, T entry)
   at System.Data.Metadata.Edm.MetadataCache.GetOrCreateEdmItemCollection(String cacheKey, MetadataArtifactLoader loader, Object& entryToken)
   at System.Data.EntityClient.EntityConnection.GetMetadataWorkspace(Boolean initializeAllCollections)
   at System.Data.Objects.ObjectContext..ctor(EntityConnection connection, Boolean isConnectionConstructor)
   at System.Data.Entity.Internal.InternalConnection.CreateObjectContextFromConnectionModel()
   at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
   at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
   at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
   at System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()
   at System.Data.Entity.Infrastructure.DbQuery`1.System.Linq.IQueryable.get_Provider()
   at System.Linq.Queryable.Join[TOuter,TInner,TKey,TResult](IQueryable`1 outer, IEnumerable`1 inner, Expression`1 outerKeySelector, Expression`1 innerKeySelector, Expression`1 resultSelector)
   at FRMobileApplication.Controllers.PreScreenController.GetClientDetails(String jobCode) in C:UsersAAMDocumentsChoy ProjectsFRMobileFRMobileApplicationFRMobileApplicationControllersPreScreenController.cs:line 492
   at FRMobileApplication.Controllers.PreScreenController.PreScreen() in C:UsersAAMDocumentsChoy ProjectsFRMobileFRMobileApplicationFRMobileApplicationControllersPreScreenController.cs:line 30
   at lambda_method(Closure , ControllerBase , Object[] )
   at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)

此页面适用于其他域。也尝试添加System.Xml.Linq,但仍然没有成功。提前谢谢。

我有这个执行LINQ的方法GetClientDetails(),看起来错误是由那个LINQ引起的,我使用了EF4。

using (frEntities db = new frEntities())
{
    var client = (from c in db.CLIENTs
                  join p in db.POSITIONs on c.CLIENT_ID equals p.CLIENT_ID
                  join cf in db.Client_Features on c.CLIENT_ID equals cf.Client_ID
                  where p.POSITION_JobCode == jobCode
                  select new{
                      c.CLIENT_ID,
                      p.POSITIONTYPE_ID
                  }).FirstOrDefault();
 }

应答更新

我开始工作了,我们刚刚将EF4更新为EF6.1,并修复了一些参考。

我认为这个错误正是它所说的。

第21行位置4上的"xs:group"开始标记与"xr:group"的结束标记不匹配。第30行,位置5。

在21号线上,你会发现

   <xs:group>

在30号线上你会发现

   </xr:group>

因此,您的XML格式不正确。任何XML解析器都不应该允许这样做而不出错。

我开始工作了,我们刚刚将EF4更新到EF6.1,并修复了一些引用。

最新更新