Umbraco项目发布错误 --More than one type want to be a model for content type authorize

在开发项目时,解决方案下面包括三个项目

MyUmbracoProject

MyUmbracoProject.Core

MyUmbracoProject.FrontEnd

第一个项目MyUmbracoProject上面安装了UmbracoCms, 项目下面包括所有的Views,在它的web.config中有如下语句

所以,在Umbraco Back office中建立的DocumentType生成的.generated.cs都在 MyUmbracoProject\App_Data\Models 中

我们在MyUmbracoProject.Core项目的Build Event(项目右键 => Properties => Build Events => Pre-build event Command line)中,加入如下语句

xcopy /y "$(SolutionDir)MyUmbracoProject\App_Data\Models\*.generated.cs" "$(ProjectDir)Models\Generated"

这样我们就把项目MyUmbracoProject中App_Data下面Models文件夹下面所有的Models复制到了项目MyUmbracoProject.Core项目的Models\Generated文件夹下面。 项目MyUmbracoProject.Core包括所有的Models和Controller后台代码

这样编译生成的MyUmbracoProject.Core.dll, 加入到项目MyUmbracoProject项目的bin文件夹中引用

发布项目时,发布MyUmbracoProject项目到服务器,发布文件中包括App_Data\Models文件夹(该文件夹中包含所有.generated.cs文件).

然后,在浏览器运行时,就报上面的那个错误

注意,项目中,在Umbraco back office中,有一个名称叫做 authorize的Document Type

错误原因

在项目MyUmbracoProject.Core中,我把从MyUmbracoProject中复制过来的放在MyUmbracoProject.Core\Models\Generated文件夹下面所有的.generated.cs文件全部包括了在项目中,编译生成了MyUmbracoProject.Core.dll

也就是说MyUmbracoProject.Core.dll中所有这些.generated.cs文件的定义。而上面我又说了,在发布的MyUmbracoProject项目中,发布文件中包括App_Data\Models文件夹(该文件夹中包含所有.generated.cs文件).

所有出现了重复,也就产生了上面的错误信息

解决方案

在项目MyUmbracoProject.Core中,把MyUmbracoProject.Core\Models\Generated中所有的.generated.cs文件都排除在项目之外(右键=>Exclude from Projects),再次编译MyUmbracoProject.Core.dll, 加入到项目的MyUmbracoProject

的bin中进行引用。重新发布项目MyUmbracoProject

这个问题就解决了

原文地址:https://www.cnblogs.com/wphl-27/p/9388641.html

时间: 2024-07-30 12:22:20

Umbraco项目发布错误 --More than one type want to be a model for content type authorize的相关文章

win2008 mvc4.0 项目发布错误(HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容。)解决方案:

错误描述:HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容:如下图: 解决方案:修改配置文件,增加 ”<modules runAllManagedModulesForAllRequests="true"/>“的设置 ,如下图: win2008 mvc4.0 项目发布错误(HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容.)解决方案:

InfoPath与SharePoint之(五)发布InfoPath表单到Content Type

不管是在List里定制化表单,还是发布表单到Library,都有一个缺陷,就是不能被其他的List/Library重复使用. 因此SharePoint提供了一个功能,可以把表单发布成Content Type,这样其他的List/Library就可以引用它了. 打开之前设计的一个表单: 选择发布到SharePoint Server: 输入一个Site 的URL: 在类型这里,选择Content Type: 选择创建一个新的Content Type.如果以前发布过这个Content Type,现在要

转载 SharePoint【Site Definition 系列】– 创建Content Type

转载原地址:  http://www.cnblogs.com/wsdj-ITtech/archive/2012/09/01/2470274.html Sharepoint本身就是一个丰富的大容器,里面存储的所有信息我们可以称其为“内容(Content)”,为了便于管理这些Conent,按照人类的正常逻辑就必然想到的是对此进行“分类”.分类所涉及到的层面又必然包括: 1.分类的标准或特征描述{即:类型属性(或:与该类型项目相关联的属性)}. 2.对应类的关联动作(即:工作流,行为以及其他设置)  

Jsoup问题---获取http协议请求失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.

Jsoup问题---获取http协议请求失败 1.问题:用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求. 错误信息: Exception in thread "main" org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or applic

CSOM创建Content Type并指定GUID

SharePoint 2013 Client Object Mode在创建Content Type时有一个限制,不能给Content Type指定一个GUID,只能由系统随机生成.而在用farm solution部署时,则可以在xml中指定好Content Type的GUID,或者用服务器端对象模型来指定GUID. SharePoint 2013 SP1发布之后,这个问题就迎刃而解了.在新的CSOM对象模型中,可以在创建Content Type时指定GUID.在o365上申请一个免费的开发网站,

how to set default content type in document set in Sharepoint

I had encounter a issue when set default content type in document set, had to work around it Create a custom document set in library, besides I want the document set only contains a content type I want to use, hence add a custom content type in the d

C#开发之问题汇总-项目移动路径后编译或者发布错误

问题:项目移动路径后编译或者发布错误 项目移动路径后,编译的时候报dll找不到路劲,但是看了下dll都在bin/Debug文件夹里,跟以前的位置不一样,修改路劲后,问题解决

MVC项目发布后出现404错误

今天在本机win7上面测试.发布,都好好的.然后,放到阿里云服务器上面去测试,就挂掉了.只有静态文件是可以访问. 问题出在了MapRequestHandler上面了,下面添加一个配置信息,就可以了. <system.webServer> <modules runAllManagedModulesForAllRequests="true" > <remove name="UrlRoutingModule"/> </module

将Gradle项目发布到Maven Central库中

本文主要介绍如何一个由gradle构建的项目部署到Maven Central. 网上大部分都是介绍如何将由maven构建的项目部署到Maven Central.与Gradle相关的比较少. 申请账号 前往 sonatype申请账号. 申请完,Create Issue. 按照这个模板填. 这一块比较简单,网上教程也比较多. Create Issue结束后,官方会需要你证明你拥有相对应的domain. 证明有以下3个途径: Add a TXT record to your DNS referenci