C# 应用程序设计,分离逻辑,是否委托
各位代表,这里适用吗?如果是,怎么做?代码示例,因为我是这个领域的新手 逻辑分离是我打算实现的,我认为我下面的任务将是一个完美的候选人。我已经读到,对象应该是相当独立的,而不是硬连接到另一个 ASPX(第页) ASCX(用户控制) 上面的任务是一个文件上传模块。执行上载的控件位于UserControl中,该控件已被拖到ASPX页面上 ASPX页面上的提交按钮应启动文件上载过程。 这应该是一个相当常见的场景,页面将其他信息保存到数据库,并上载文件 根据过去的经验,我的直觉是通过公共属性公开UserControl中的上载控件。 这会将附件UserControl绑定到页面C# 应用程序设计,分离逻辑,是否委托,c#,user-controls,delegates,C#,User Controls,Delegates,各位代表,这里适用吗?如果是,怎么做?代码示例,因为我是这个领域的新手 逻辑分离是我打算实现的,我认为我下面的任务将是一个完美的候选人。我已经读到,对象应该是相当独立的,而不是硬连接到另一个 ASPX(第页) ASCX(用户控制) 上面的任务是一个文件上传模块。执行上载的控件位于UserControl中,该控件已被拖到ASPX页面上 ASPX页面上的提交按钮应启动文件上载过程。 这应该是一个相当常见的场景,页面将其他信息保存到数据库,并上载文件 根据过去的经验,我的直觉是通过公共属性公开User
我如何才能解开它,可能是使用委托?视图需要关于其附件控件的哪些信息?对于包含附件控件的视图,附件控件需要知道什么 我认为
委托(流上传内容)
可以让您进一步解耦,但是如果您使用的是System.Web.Page模型。。。目前看来还缺乏将事情解耦的动机
让视图接受回调会反转应用程序中的适当依赖路径,不是吗
<uc1:Attachment ID="Attachment1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
protected void Button1_Click(object sender, EventArgs e)
{
// Check the files and upload
}
<MyControl:Upload ID="Upload1" runat="server"
AllowedFileExtensions=".zip,.jpg,.jpeg,.doc,.gif,.png,.txt"
MaxFileInputsCount="3"
OverwriteExistingFiles="false"
onfileexists="Upload1_FileExists"
onvalidatingfile="Upload1_ValidatingFile" />
public Upload AttachmentControl
{
get { return this.Upload1; }
}