Sitecore网站需要编译吗?

时间:2013-01-18 02:35:09

标签: asp.net visual-studio sitecore

我用sitecore工作了一段时间。

自从我到达以来,我一直将现有项目作为参考并创建新项目。

对于Sitecore,我们将为该网站提供大量文件夹和文件。我们只需要与JavaScripts和CSS文件一起创建子布局(*.ascx)。

对于这些*.ascx个文件,我将它们放在layouts/Project_Name/The_File_Name.ascxlayouts/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或其中一个依赖项

1 个答案:

答案 0 :(得分:4)

我同意顾问的意见。 Visual Studio中有两种项目类型:

  1. 网站项目
  2. Web应用程序项目
  3. 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