我有几个网页,每个页面都差不多。它们中的每一个都在顶部有一个员工部分。下一个部分是客户部分,再下一个部分是之前的订单。这两个部分并不是所有页面都必须有的。最后一个部分是评论(博客)。
我最初有两个页面,没有问题。我为每个页面编写了相同的代码(复制粘贴),稍微调整了一些细节。销售人员把这个交给了客户,客户变得越来越饥渴……现在我有了10个具有更或少相同代码的页面。
现在我想通过重用相同的“控件”来减少开发时间。所以我开始做一些ascx(4),想着可以将这4个控件与每个页面(员工、客户、销售、博客)一起重用。
但我遇到了一点问题,谷歌告诉我——“不,那不是你使用ascx的方式”。一个ascx只是一个新的“
问题在于——我在NewTest.aspx中使用了这4个控件,但我没有看到控件中的
我该怎么做?需要重新考虑什么?
我使用ObjectDataSource从Session中获取员工ID。员工记录包括他的姓名、一个下拉菜单(仅限销售代表)和一个搜索框。基本上是一个带有一些额外逻辑的文本框。
所有底层逻辑(BLLs、DALs、Models等)都完全相同。项目的其余部分编译和运行与我开始使用ascx之前完全相同。
编辑:我正在努力将KSS应用于此,如果我能够显示EmployeeRecord,则可以复制粘贴该想法。
从webconfig开始:
智能感知可以识别EmployeeRecord和OrderRecord,但不能识别Comments和CustomerRecord。编辑:现在智能感知已经能够识别所有这些。
(任何拼写错误都是为了您的乐趣而存在;),实际代码中没有拼写错误)
我最初有两个页面,没有问题。我为每个页面编写了相同的代码(复制粘贴),稍微调整了一些细节。销售人员把这个交给了客户,客户变得越来越饥渴……现在我有了10个具有更或少相同代码的页面。
现在我想通过重用相同的“控件”来减少开发时间。所以我开始做一些ascx(4),想着可以将这4个控件与每个页面(员工、客户、销售、博客)一起重用。
但我遇到了一点问题,谷歌告诉我——“不,那不是你使用ascx的方式”。一个ascx只是一个新的“
asp:label
” / “asp:textbox
”,可能会带有一些额外的逻辑。问题在于——我在NewTest.aspx中使用了这4个控件,但我没有看到控件中的
asp:formview
/ asp:detailsview
等内容。我可以在formview的周围放置“hello world”,就在之前、之后,但不能在<formview></formview>
内部。我该怎么做?需要重新考虑什么?
<table width="800">
<tr>
<td>
<IIT:EmployeeRecord ID="test1" runat="server" />
</td>
</tr>
</table>
我使用ObjectDataSource从Session中获取员工ID。员工记录包括他的姓名、一个下拉菜单(仅限销售代表)和一个搜索框。基本上是一个带有一些额外逻辑的文本框。
所有底层逻辑(BLLs、DALs、Models等)都完全相同。项目的其余部分编译和运行与我开始使用ascx之前完全相同。
编辑:我正在努力将KSS应用于此,如果我能够显示EmployeeRecord,则可以复制粘贴该想法。
从webconfig开始:
<pages>
<controls>
<add tagPrefix="IIT" tagName="Comments" src="~/DynamicData/FieldTemplates/Comments.ascx" />
<add tagPrefix="IIT" tagName="OrderRecord" src="~/DynamicData/FieldTemplates/OrderRecord.ascx" />
<add tagPrefix="IIT" tagName="CustomerRecord" src="~/DynamicData/FieldTemplates/CustomerRecord.ascx" />
<add tagPrefix="IIT" tagName="EmployeeRecord" src="~/DynamicData/FieldTemplates/EmployeeRecord.ascx" />
</controls>
</pages>
智能感知可以识别EmployeeRecord和OrderRecord,但不能识别Comments和CustomerRecord。编辑:现在智能感知已经能够识别所有这些。
EmployeeRecord
<asp:formview ID="fv_empDetail" runat="server" datasourceID="ods_empDetail">
<itemtemplate>
<table>
<tr>
<td>
Medarbejder:
</td>
<td>
<asp:TextBox ID="tbEmployeeName" runat="server" ReadOnly="true" Text='<%# Bind("name") %>' BorderStyle="None"></asp:TextBox>
</td></tr>
</table>
</ItemTemplate>
</asp:FormView>
<asp:ObjectDataSource ID="ods_empDetail" runat="server" SelectMethod="GetEmployee"
TypeName="xxxxxx.EmployeeBLL">
<SelectParameters>
<asp:SessionParameter Name="employee" DbType="String" SessionField="employee" />
</SelectParameters>
</asp:ObjectDataSource>
(任何拼写错误都是为了您的乐趣而存在;),实际代码中没有拼写错误)