添加到CodeBehind的代码未执行

本文关键字:执行 代码 CodeBehind 添加 | 更新日期: 2023-09-27 18:06:24

我对Umbraco很陌生,我仍在摸索它的工作方式,所以我完全有可能错过了一些非常明显的东西。

我被要求修改MasterPage上的滑块的工作方式,我发现滑块的标记在MasterPage的.cs文件中。

void CreateSlider()
    {
        if (!String.IsNullOrEmpty(CurrentContent.Slider1Image))
        {
            slider.InnerHtml += "<li class='foobar'>";
            if (!String.IsNullOrEmpty(CurrentContent.Slider1Title))
            {
                slider.InnerHtml += "<img src='" + GetMedia(CurrentContent.Slider1Image) + "' alt='' />";
                slider.InnerHtml += "<div class='slider_content bx-pager-item'>";
                slider.InnerHtml += "<h1>" + CurrentContent.Slider1Title + "</h1>";
                if (!String.IsNullOrEmpty(CurrentContent.Slider1VideoButtonTitle) && !String.IsNullOrEmpty(CurrentContent.Slider1VideoLink))
                    slider.InnerHtml += "<span>" + CurrentContent.Slider1VideoButtonTitle + "</span>";
                slider.InnerHtml += "</div>";
                if (!String.IsNullOrEmpty(CurrentContent.Slider1VideoButtonTitle) && !String.IsNullOrEmpty(CurrentContent.Slider1VideoLink))
                {
                    slider.InnerHtml += "<div class='video_wrapper'>";
                    slider.InnerHtml += "<div class='youtube_container'>";
                    slider.InnerHtml += "<div><iframe src='https://player.vimeo.com/video/" + CurrentContent.Slider1VideoLink + "' width='100%' height='542' frameborder='0' webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe></div>";
                    slider.InnerHtml += "</div>";
                    slider.InnerHtml += "</div>";
                }
            }
            slider.InnerHtml += "</li>";
        }
}

我已经尝试向<li>添加一个类,但它根本没有显示在HTML标记中。我试着建造这个项目,但没有成功。

这是输出的标记:

<%@ Master Language="C#" MasterPageFile="~/masterpages/Base.master" AutoEventWireup="true" Inherits="HomePageType1" Codebehind="HomePageType1.master.cs" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
<div class="slider_container">
    <ul id="ContentPlaceHolderDefault_ContentPlaceHolder1_slider" class="bxslider">
        <li>
            <img src='/media/img001.jpg' alt='' />
            <div class='slider_content'>
                <!--  SLIDE CONTENT -->
            </div>
            <div class='video_wrapper'>
                <div class='youtube_container'>
                    <div>
                        <!-- VIDEO URL -->
                    </div>
                </div>
            </div>
        </li>
    </ul>
</div>
</asp:Content>

有什么建议吗?

添加到CodeBehind的代码未执行

添加到/App_code/之外的.cs文件中的任何代码都必须在"计数"之前进行编译,这一部分应该在构建项目时处理。

此外,母版页必须引用其后面的代码才能拾取,就像一样

<%@ Master Language="C#"
    AutoEventWireup="true" CodeBehind="MyMasterpage.master.cs" Inherits="MyNamespace.MyMasterpage" %>

您是否也可以分享母版页的内容?

这没有正常运行的原因是因为以前的开发人员已经编译了他们的代码,但也将C#文件上传到了服务器。所以我们收到的文件都是经过编译的。

经过多次政治争论,我们让他们把未编译的文件发给我们,这让我可以按预期修改代码。