2010-09-09 146 views
3

我想创建一个没有代码隐藏和设计器的ASP.Net页面。 基本上我想回到ASP的经典,但保持CLR和基类库使.Net哦如此精彩。 我想只是一个网页是这样的:ASP.Net无代码隐藏

 

<html> 
<body> 
<div> 

    <% 
    int customerID = Request.QueryString["CustomerID"]; 
    //Customer and DataAccess classes come from an extenal assembly 
    Customer customer = DataAccess.GetCustomer(customerID); 
    %> 
    You asked for Customer with ID: <%=customerID;%><br /> 
    Name: <%=customer.Name;%><br /> 
    Phone: <%=customer.Phone;%><br /> 


</div> 
</body> 
</html> 

然而,似乎有一些问题与。

  • Request对象只能在Page对象中使用。我希望完全删除代码隐藏和设计器页面。
  • 没有intellisense
  • 还有什么我应该知道的,在我深入这之前?
  • 不知道如何开始extenal库
+0

你应该看看ASP.NET DataBinding。它会减少很多依赖于代码的依赖。但是:您将遇到控制块问题。 – Aren 2010-09-10 00:08:01

回答

7

如果您不想在代码隐藏方面做任何事情,您不需要做任何事情。

要导入的命名空间,使用导入指令:

<%@ Import namespace="System.Web" %> 

要导入外部库,使用汇编指令:

<%@ Assembly Name="YourAssemblyName" %> 

导入System.Web程序可以让你的HttpContext.Current.Request对象的智能感知访问。它也将为您提供该命名空间中任何其他对象的智能感知,就像代码文件一样。

+0

感谢您对HttpContext.Current.Request的说明 - 工作。 – csauve 2010-09-09 22:26:24

+0

但是,intellisense仍然无法使用Import指令 – csauve 2010-09-09 22:26:45

+1

您正在使用哪个版本的VS?还可以尝试任何/所有[这些设置](http://adammcraventech.wordpress.com/2009/06/23/intellisense-for-asp-net-markup-not-appearing-in-visual-studio-2008/)如果您在智能感知方面遇到问题。 – womp 2010-09-09 22:58:31

5

拉着我认为最好的方法是看ASP.NET MVC,特别是与Razor视图引擎。

尽管如此,你仍然会有一些工具。

+3

我不得不同意,虽然不是你问的问题,但Asp.Net Mvc非常值得研究和理解。我感受到来自OP的(正常的)Asp.Net有相当大的幻灭感,但并不是在时间上跳起来解决它,而是应该考虑更新,更好的达到同样目的的方式。在开始时,我们放弃了大约3个月的开发,转而使用Asp.Net MVc。我们从未回头。 – spender 2010-09-09 22:20:47

+1

我一直在意ASP.NET MVC的一段时间,但我不认为它适合这个项目。这些asp页面实际上不是页面。他们是HTML是的,但他们将被拉动通过Ajax和注入DOM。我已经写了大量的javascript/jQuery,我真的不想重新开始一个不同的框架。 @spender:yaa对不起,如果我有点反对正常的ASP.Net。我刚刚看到很多重/慢/有问题的,并自己写了几个。只是我的意见,但当我写我自己的JS + AJAX表现更好/更好的用户体验时,我发现页面。 – csauve 2010-09-09 22:33:37

+1

MVC直接匹配您描述的模型,使用MVC创建页面返回不规则的html非常容易,因为它没有html或body标签。 – 2010-09-09 22:35:03