我正在忙着了解Umbraco,但我在互联网上看不到任何东西告诉我Umbraco是否允许我使用连接到SQL Server数据库的C#代码创建自定义ASP.NET表单。
如果我需要在ASP.NET中创建这样的自定义表单并将其带入Umbraco,我是否会遇到Umbraco的任何问题?
答案 0 :(得分:3)
有两种方法(至少我知道),您可以在Umbraco(版本4.7.x及更低版本)中实现自定义.Net表单。
<强>基于模板的强>
您可以使用标准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>
答案 1 :(得分:1)
另一个快速而便宜的选择是使用Contour Forms包。它的成本约为99欧元,并提供了一个WYSIWYG界面来创建表单。它具有工作流和将值存储在自定义表中的能力。
我们非常喜欢它,它适用于大约75% - 80%的需要表格的情况。
答案 2 :(得分:0)
你绝对可以在版本4.7(及更早版本)中执行此操作,方法是创建一个asp.net自定义控件,然后将其添加到系统中 - 这一切都非常容易。
在V5中你不能创建自定义控件,因为它现在是基于MVC的,并且因为我刚刚开始使用v5,所以无法评论它有多么难/不同。
您使用的是哪个版本?