Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Sitefinity小部件用户控件_C#_Model View Controller_Sitefinity - Fatal编程技术网

C# Sitefinity小部件用户控件

C# Sitefinity小部件用户控件,c#,model-view-controller,sitefinity,C#,Model View Controller,Sitefinity,我创建了这个透明控件,并希望能够将其添加为小部件。我创建了这个新的MyWidget1,但我不确定在哪里或如何添加用户控件?是否应将其添加到cshtml页面 透明控制.ascx <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TransparencyControl.ascx.cs" Inherits="SitefinityWebApp.transparency.TransparencyControl" %>

我创建了这个透明控件,并希望能够将其添加为小部件。我创建了这个新的MyWidget1,但我不确定在哪里或如何添加用户控件?是否应将其添加到cshtml页面

透明控制.ascx

 <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TransparencyControl.ascx.cs" Inherits="SitefinityWebApp.transparency.TransparencyControl" %>
    <%@ Register TagPrefix="ucTransparency" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
    <asp:Xml ID="XmlForm" runat="server"></asp:Xml>
default.cshtml

@model SitefinityWebApp.Mvc.Models.MyWidget1Model

    <h1>
        @Html.Raw(Model.Message)
    </h1>
    <p>

        <uc:ucTransparency runat="server" ID="ucTransparency" />
    </p>

正如@Veselin所说,您不能将MVC和用户控件混合使用。您可以将用户控件注册为小部件,也可以使用MVC创建小部件

网络表单:

查看以了解如何注册用户控件

MVC

如果您使用的是推荐的MVC,那么Sitefinity有一些您可以查看的功能


请注意,在实现新的小部件后,必须在Sitefinity CMS工具箱中注册它们。您可以通过使用ControllerToolboxItem属性装饰小部件控制器类来实现这一点。Sitefinity有相关文档,可以找到

您不能将webforms用户控件放入MVC视图中。更好的方法是将您的小部件实现为MVC小部件——这意味着您也需要创建控制器。我需要将用户控件转换为MVC小部件吗?