2014-10-08 32 views
0

我最近在Ektron中安装了一个新站点。它创建了使其工作所需的所有文件夹和文件。我使用自己的文件夹和CSS/Script文件在VS 2012中创建了一个自定义MasterPage,并将其导入到Ektron中以供使用。如何导入Ektron中的VS MasterPage

我从Workarea导入>设置>模板并导入模板。

当我查看点击模板,我看到下面的错误:

Parser Error Message: Could not load type 'WMED.Site'. 

Source Error: 



Line 1: <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="WMED.Site" %> 
Line 2: 
Line 3: 


Source File: /Site.Master Line: 1 

如何解决错误

::我应该从MP删除inheritnamespace为它工作?

HEAD

<head runat="server"> 
    <title></title> 
    <meta http-equiv="X-UA-Compatible" content="IE=9" /> 
    <meta name="HandheldFriendly" content="True" /> 
    <meta name="MobileOptimized" content="320" /> 
    <meta name="viewport" content="width=device-width" /> 
    <meta name="apple-mobile-web-app-capable" content="yes" /> 
    <link rel="icon" type="image/gif" href="favicon.gif" /> 
    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" /> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> 

    <!--<script type="text/javascript" src="theScripts/sliderJS.js"></script> 
    <link rel="stylesheet" href="theStyles/sliderStyle.css" type="text/css" />--> 

    <link rel="stylesheet" href="theStyles/pageStyle.css" type="text/css" /> 
    <link rel="stylesheet" href="theCustomFonts/trajanpro_style.css" type="text/css" /> 
    <link rel="stylesheet" href="theCustomFonts/blackjar_style.css" type="text/css" /> 
    <script src="theScripts/jquery.webticker.js" type="text/javascript"></script> 
    <link rel="stylesheet" href="theStyles/tickerStyles.css" type="text/css" /> 
    <script src="theScripts/pageScript.js" type="text/javascript"></script> 
    <script src="theScripts/placeholders.min.js" type="text/javascript"></script> 

    <script src="theScripts/jquery.sidr.min.js" type="text/javascript"></script> 
    <link rel="stylesheet" href="theStyles/jquery.sidr.light.css" type="text/css" /> 

    <script src="theScripts/jssor.js" type="text/javascript"></script> 
    <script src="theScripts/jssor.slider.js" type="text/javascript"></script> 
    <script src="theScripts/jssorSlider.js" type="text/javascript"></script> 
    <link rel="stylesheet" href="theStyles/jssorSlider.css" type="text/css" /> 

    <!-- ENSURES HTML TAGS ARE COMPLIANT --> 
    <!--<link rel="stylesheet" href="theStyles/styleDiagnostic.css" type="text/css" />--> 

    <script> 
     $(window).resize(function() { 
      var docHeight = $(document).height(); 
      var docWidth = $(document).width(); 
      $('#lbl').text("height: " + docHeight + " width: " + docWidth); 
     }); 
    </script> 
    <script> 
     function SearchNMClick() { 
      document.getElementById('HiddenSearchNM').click(); 
     } 
    </script> 
    <asp:ContentPlaceHolder ID="HeadPlaceHolder" runat="server"> 
    </asp:ContentPlaceHolder> 
</head> 

回答

1

您可能正在使用与Web站点相反的Web应用程序项目。正因为如此,您的MasterPages,ASPX模板,线框等代码。在生成项目时被编译成DLL(或DLL)。

当您将Web应用程序项目部署到Ektron站点时,除了已经推出的文件之外,您必须将项目的DLL复制到站点的bin目录中。您的项目在建立后可以找到这些目录,然后在文件资源管理器中找到它,如果您没有看到该目录。

/bin/WMED.dll

另外,如果是这样的话,做.cs文件推送到服务器。

+0

感谢您的反馈。我将'CodeBehind'更改为'CodeFile',我能够看到该网站,但没有一个脚本正在加载:/ – SearchForKnowledge 2014-10-08 14:13:36

+1

好的,如果您现在使用CodeFile反对CodeBehind,则需要打开.cs文件带有.master,.aspx,.ascx等的服务器。 – fooser 2014-10-08 14:14:49

+0

是的,它在那里,似乎工作:)谢谢。 – SearchForKnowledge 2014-10-08 14:18:14

1

你并不需要导入一个母版到晔,只有ASPX模板都是进口的。这个过程是,创建你的ASPX模板(与关联的MasterPage),将其保存到你的网站,然后注册Ektron。

+0

好的,我所做的是创建一个Default.aspx(将其与MP关联)和Site.Master MP,并将这两个文件和这两个页面所需的任何文件夹复制到Ektron站点文件夹中,然后导入Default.aspx作为线框模板,但每次点击“View”查看时,它都会给我一个空白屏幕。我是否正确地做这件事? – SearchForKnowledge 2014-10-08 13:11:08

1

检查文件后面的母版页代码(.cs),并确保公共部分类看起来像公共部分类WMED.Sitename使用相同的。还要确保.cs文件与.master模板位于同一目录中。

+0

我是否必须将'CodeBehind'更改为'CodeFile'?我加倍和三重检查,他们是一样的。 Default.aspx(用于线框模板)与MasterPage位于同一个根文件夹中。 – SearchForKnowledge 2014-10-08 13:55:02

+1

如果您使用的是已编译的网站,那么它将使用CodeBehind。如果你正在运行未编译,那么你会使用CodeFile。 – 2014-10-09 14:43:57

+0

我不得不使用CodeFile,因为它没有编译,谢谢澄清:) – SearchForKnowledge 2014-10-09 16:26:57