【发布时间】:2016-01-26 13:36:24
【问题描述】:
我在内容部分添加了一个简单的字段
ContentDefinitionManager.AlterPartDefinition("CarouselContentPart", b =>
b
.WithField("AutoPlay", cfg =>
cfg.OfType("NumericField")
.WithSetting("NumericFieldSettings.Hint", "Enter a value in milliseconds for autoplay (leave blank for no autoplay)")
.WithSetting("NumericFieldSettings.Required", "false")
.WithDisplayName("Autoplay"))
);
return 18;
它被添加了两次,现在我无法删除它,无论是通过另一次迁移还是通过后台办公室。这是堆栈跟踪
发生了未处理的异常,请求已终止。请刷新页面。如果错误仍然存在,请返回 序列包含多个匹配元素 System.InvalidOperationException:序列在 System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable
1 source, Func2 谓词) 处包含多个匹配元素,位于 C:\ Development\FE-Corporate\src\Orchard\ContentManagement\MetaData\Builders\ContentPartDefinitionBuilder.cs:Orchard.ContentTypes.Services.ContentDefinitionService 的第 46 行。c__DisplayClass48.b__47(ContentPartDefinitionBuilder typeBuilder) 在 Orchard.ContentManagement.MetaData.ContentDefinitionManagerExtensions.AlterPartDefinition (IContentDefinitionManager 管理器,字符串名称,Action1 alteration) in C:\Development\FE-Corporate\src\Orchard\ContentManagement\MetaData\IContentDefinitionManager.cs:line 32 at Orchard.ContentTypes.Services.ContentDefinitionService.RemoveFieldFromPart(String fieldName, String partName) at Orchard.ContentTypes.Controllers.AdminController.RemoveFieldFromPOST(String id) at lambda_method(Closure , ControllerBase , Object[] ) at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary2 参数)在 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext,ActionDescriptor actionDescriptor,IDictionary2 parameters) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult2.CallEndDelegate(IAsyncResult asyncResult) 在 System.Web.Mvc.Async .AsyncResultWrapper.WrappedAsyncResultBase`1.End() 在 System.Web.Mvc.Async.AsyncContro llerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.b__3d() 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.c__DisplayClass46.b__3f() 在 System.Web.Mvc。 Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.c__DisplayClass46.b__3f() 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.c__DisplayClass46.b__3f() 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.c__DisplayClass46。 b__3f()
【问题讨论】:
-
看起来代码只需要一个字段并且不能使用多个字段。我想您唯一的选择是从附加字段的数据库中删除一些记录
标签: c# asp.net orchardcms orchardcms-1.9