我用sitecore工作了一段时间。
自从我到达以来,我一直将现有项目作为参考并创建新项目。
对于Sitecore,我们将为该网站提供大量文件夹和文件。我们只需要与JavaScripts和CSS文件一起创建子布局(*.ascx
)。
对于这些*.ascx
个文件,我将它们放在layouts/Project_Name/The_File_Name.ascx
和layouts/Project_Name/The_File_Name.ascx.cs
下。
在*.ascx
文件中,我有以下内容。
<%@ Control Language="c#" AutoEventWireup="true" TargetSchema="http://schemas.microsoft.com/intellisense/ie5" Inherits="Layouts.The_File_Name.The_File_NameSublayout" CodeFile="~/layouts/Project_Name/The_File_Name.ascx.cs" %>
完成后,我将整个布局文件夹部署到生产服务器上。
我将在生产服务器上创建一个空白网站,并复制必要的文件,主要是JavaScripts,CSS和*.ascx
文件。
昨天,Sitecore顾问建议我从CodeFile
更改为CodeBehind
并进行编译。
据我所知,如果我们在Visual Studio中创建Web应用程序,系统会给我们CodeBehind
,每当我们更改时,我们都需要编译。
但是如果我们创建一个网站,我们就不需要编译了。但是,我们可以发布该网站。
我的问题是:顾问是什么意思?我是否需要编译整个Sitecore网站文件夹?
如果是这样,我可以编译(构建)整个文件夹吗?
我可以从中获取*.dll
吗?
到目前为止,我已经尝试编译了2个我的网站,但是我收到了这个错误
无法加载程序集或文件ChilkaDotNet2或其中一个依赖项
答案 0 :(得分:4)
我同意顾问的意见。 Visual Studio中有两种项目类型:
Sitecore本身作为已编译的Web应用程序提供,因此,您可以 在VS中创建Web应用程序项目(WAP)并仅包含您的内容,以便在其中添加布局,子布局和其他任何内容。项目中的文件。执行此操作时,您只需将项目的*.dll
部署到目标服务器的/bin/
以及任何*.aspx
或*.ascx
文件(无代码隐藏或设计器文件) )。
现在,理论上,您可以在VS中创建WAP并手动将CodeBehind
更改为CodeFile
,但是您需要部署*cs
个文件。通常,它建议使用Web应用程序,以便您可以使用自动化流程(如构建服务器或批处理脚本)来构建项目。
您发布的错误消息是因为您正在尝试构建网站项目。可以构建一个标准的非Sitecore网站项目,但是如果Sitecore本身已经作为已编译的WAP存在,那么它就不会被构建。
以下是Sitecore首席技术官的一篇博文,可以帮助您:Create a Visual Studio 2010 Project for a Sitecore Solution