我忙於學習Umbraco,但在互聯網上沒有看到任何告訴我Umbraco是否允許使用連接到SQL Server數據庫的C#代碼創建自定義ASP.NET窗體的任何內容。Umbraco限制中的自定義窗體?
如果我需要在ASP.NET中創建這樣一個自定義窗體並將其帶入Umbraco,那麼我會對Umbraco有任何問題嗎?
我忙於學習Umbraco,但在互聯網上沒有看到任何告訴我Umbraco是否允許使用連接到SQL Server數據庫的C#代碼創建自定義ASP.NET窗體的任何內容。Umbraco限制中的自定義窗體?
如果我需要在ASP.NET中創建這樣一個自定義窗體並將其帶入Umbraco,那麼我會對Umbraco有任何問題嗎?
通過創建一個asp.net自定義控件,然後將其添加到系統中,您可以在4.7版本(及更早版本)中完成此操作 - 它非常容易完成。
在V5中,您無法創建自定義控件,因爲它現在是基於MVC的,而且隨着我剛剛在v5上加快速度,無法評論它有多麼困難/不同。
您使用的是哪個版本?
另一個快速且便宜的選項是使用Contour Forms包。它的價格約爲99歐元,並提供一個所見即所得的界面來創建表單。它具有工作流程和將值存儲在自定義表格中的功能。
我們非常喜歡它,它適用於您需要表格的情況下可能有75% - 80%的情況。
有兩種方式(即我所知道的,至少),您可以在一把umbraco實現自定義.NET的形式(版本4.7.x及以下)。
基於模板的
您可以在模板標記使用標準的ASP.Net控制和使用<script runat="server" language="c#">
標籤直接建立形式。這是站在內聯網頁的編碼,你會在Visual Studio中,所以你放棄了預編譯的奢侈品等
<%@ Master Language="C#" MasterPageFile="~/umbraco/masterpages/default.master" AutoEventWireup="true" %>
<asp:Content ContentPlaceHolderID="ContentPlaceHolderDefault" runat="server">
<asp:Label ID="myLabel" runat="server" />
</asp:Content>
<script runat="server" language="c#">
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.myLabel.Text = "Hello World";
}
}
</script>
宏觀基於
.ascx
複製到/usercontrols/
文件夾中。.dll
複製到/bin/
文件夾中。.Net User Control
的Macro Properties
選項卡上的控制。模板代碼看起來類似如下:
<%@ Master Language="C#" MasterPageFile="~/umbraco/masterpages/default.master" AutoEventWireup="true" %>
<asp:Content ContentPlaceHolderID="ContentPlaceHolderDefault" runat="server">
<umbraco:Macro Alias="MyForm" MyProperty="Hi!" runat="server" />
</asp:Content>
輪廓是可以自定義的自定義HTML表單,不是那種形式的海報指的是真正的好。 – rob 2013-09-19 13:14:53
那麼,它的WebForms並支持從SQL數據庫表生成。因此,它確實做到了他所要求的所有事情,並且可能以更簡單,更經受考驗和可持續的方式進行。我認爲這是一個有效的選擇,取決於他的需求的細節。 – BeaverProj 2013-09-19 18:30:03