1

我已经在 sitecore 工作了一段时间。

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

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

对于这些*.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" %>

完成后,我将整个布局文件夹部署到生产服务器上。

我将在生产服务器上创建一个空白网站并复制必要的文件,主要是 JavaScript、CSS 和*.ascx文件。

昨天,一位 Sitecore 顾问建议我从CodeFileto更改CodeBehind并编译它们。

我知道如果我们在 Visual Studio 中创建 Web 应用程序,系统会提供给我们CodeBehind,并且每当我们更改时,我们都需要进行编译。

但是如果我们创建一个网站,我们就不需要编译了。但是,我们可以发布该网站。

我的问题是:顾问是什么意思?我需要编译整个 Sitecore 网站文件夹吗?

如果是这样,我可以编译(构建)整个文件夹吗?

我可以从中得到*.dll吗?

到目前为止,我已经尝试编译我的 2 个网站,但我收到了这个错误

无法加载程序集或文件 ChilkaDotNet2 或其依赖项之一

4

1 回答 1

4

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

  1. 网站项目
  2. 网络应用项目

Sitecore 本身作为已编译的 Web 应用程序提供,因此要向其中添加布局、子布局和其他任何内容,您应该在 VS 中创建一个 Web 应用程序项目 (WAP),并且只在项目中包含您的文件。当您这样做时,您只需将项目的*.dll's 部署到目标服务器/bin/和任何*.aspxor*.ascx文件(没有代码隐藏或设计器文件)。

现在,理论上,您可以在 VS 中创建 WAP 并手动更改CodeBehind为,CodeFile但随后您需要部署*cs文件。一般来说,它建议使用 Web 应用程序,以便您可以使用构建服务器或批处理脚本等自动化过程来构建您的项目。

您发布的错误消息是因为您正在尝试构建网站项目。可以构建标准的非 Sitecore 网站项目,但如果其 Sitecore 本身已经作为已编译的 WAP 存在并且您不能从项目中排除文件,则不能构建。

以下是 Sitecore 的 CTO 的一篇博文,可能会对您有所帮助:为 Sitecore 解决方案创建 Visual Studio 2010 项目

于 2013-01-18T02:43:34.127 回答