ASP.NET控件/页面库问题

时间:2008-09-19 15:04:44

标签: asp.net

我正在处理具有预定义页面和可用控件的程序集。我在创建服务器控件方面没有任何困难,但我想知道在处理程序集中的页面时“最佳实践”是什么。你可以将一个页面编译成一个程序集并将其作为一个dll释放吗?从客户端浏览器的角度来看,如何通过链接输入或指向的地址进行访问?例如,我有一个简单的登录页面,其中包含标准的用户名和密码文本框,以及登录按钮和“记住我”复选框,其中包含“我无法记住我的用户名和/或密码”超链接。我可以像访问网络资源一样访问该页面吗?例如“http://www.site.name/webresource.axd?related_resource_id_codes

2 个答案:

答案 0 :(得分:2)

如果您希望能够对其进行编码并将其视为真实页面,那么最好的选择就是实现VirtualPathProvider。使用virtualpathprovider将允许您将实际的aspx作为资源嵌入(或将其放在数据库中,无论如何)并从那里提供它,并仍然使用asp.net页面编译引擎。

这样您仍然可以轻松使用visual studio设计时工具,并且无需进行大量的构建自定义来预编译页面。你也可以在这里看到

如果您不想这样做,可以尝试使用aspnet_compiler工具将aspx和此类页面预编译为dll。这将需要一些构建自定义,以及允许从dll提供页面的技巧。

答案 1 :(得分:1)

您可以将httpHandler元素添加到指向您页面的web.config。类似的东西:

<httpHandlers>
   <add verb="*" path="login.aspx" type="MyPages.LoginPage, MyPages" />
</httpHandlers>