C# 纯C语言的网站#

C# 纯C语言的网站#,c#,php,asp.net,C#,Php,Asp.net,我想学习如何用C#制作网站。我懂PHP,但我更喜欢C语言。我曾尝试学习如何在ASP.NET中创建一个网站,到目前为止,这让我非常沮丧,因为我真的不喜欢ASP(甚至比我更不喜欢PHP)。这件事让我完全疯了,以至于我很难强迫自己去学它。有没有一种方法可以直接将控制权从ASP转移到C#,然后从C#开始执行所有操作,包括在必要时像在PHP中一样输出HTML和其他内容?换句话说,我喜欢PHP的网站编程方式,但更喜欢C语言。任何帮助都将不胜感激。请查看asp.net mvc: 它比asp.NETWebFor

我想学习如何用C#制作网站。我懂PHP,但我更喜欢C语言。我曾尝试学习如何在ASP.NET中创建一个网站,到目前为止,这让我非常沮丧,因为我真的不喜欢ASP(甚至比我更不喜欢PHP)。这件事让我完全疯了,以至于我很难强迫自己去学它。有没有一种方法可以直接将控制权从ASP转移到C#,然后从C#开始执行所有操作,包括在必要时像在PHP中一样输出HTML和其他内容?换句话说,我喜欢PHP的网站编程方式,但更喜欢C语言。任何帮助都将不胜感激。

请查看asp.net mvc:

它比asp.NETWebForms更接近于金属,如果您来自PHP背景,应该会感觉更舒服


这里有很多很好的教程:

是的,您可以使用HttpHanders来处理所有请求。HttpHandler是一个可以直接接收请求并用代码处理所有请求的类。它通常用于捕获对图像的请求,并为数据库提供服务,但您当然可以使用它来做您想做的事情

看看这本书。如果您还有任何问题,请发表评论

ASP.NET MVC是另一个选项,但默认情况下仍然使用ASPX标记。您可能会找到另一个更喜欢的视图引擎。不过,我对此一无所知。(编辑-谢谢Joel!)


编辑:请记住,在使用HttpHandler时,从技术上讲,您仍然处于ASP.NET项目中,但这只是为了让请求/响应/服务器上下文/etc框架在您周围运行。您仍然可以100%使用C代码。

ASP.NET MVC可能是一个不错的选择:www.ASP.NET/MVC

您还可以使用通用处理程序(.ashx)。它们为您提供了一个httpcontext,如何使用它完全取决于您。

“我真的一点都不喜欢ASP(甚至比我更不喜欢PHP)”,然后是“我喜欢PHP方式”。听起来你很难与老年人决裂,并且变得有些矛盾


从经典的asp到asp.net,我也有同样的感受,而传统的asp.net网站仍然让我感到悲伤。当您习惯于更细粒度的控制时,您可能很难了解更多“框架式”的做事方式。如前所述,尝试一下asp.NETMVC。在我看来,它提供了正确的平衡,对我来说,这是Asp.net之后的新鲜空气。

只是不要使用任何服务器端控件,将代码直接放在ASPX文件中(介于两者之间),它应该感觉就像PHP(或经典Asp)。。。您也可以使用HttpHandler来完成,但在这种情况下,您将失去编写内联HTML的能力;您必须使用Response.Write输出所有标记,这并不方便


请注意,我强烈建议不要使用这些方法,这只是您问题的答案;)

这不是一个特别好的选择,但是如果你想走简单的路线,你可以使用C#with。

你可以在ASP.net中使用相当纯的C做大多数事情。早些时候,我非常依赖ASP.net控件,在这里和那里拖拽我的大部分页面和一些代码片段,以使控件实现我想要的功能。我真的不喜欢它,这让我觉得编写ASP.net与C#编程是完全不同的(好吧,那时候是vb,不要评判我!)

现在,几乎所有代码和html生成都由各种自定义类处理。我的代码隐藏页面只是将特定于页面的输入和事件连接到我的utillity类。同样,我使用内联代码进行输出——我只需在我的代码后面调用一个函数,该函数收集必要的变量,并让我的类完成繁重的工作


我肯定会发现一些ASP.net特定的控件很有用,并且我会不时使用它们。然而,我确实发现,改变代码的组合方式让我对该语言有了完全不同的理解。

你对ASP.NET的感觉==我对PHP的感觉。当我不得不编写PHP代码时,我会生气这就是我对VB(和防风草)的认真感受。。。我们是否向一个尚未熟悉asp.net的新手推荐通用处理程序?虽然这从技术上回答了这个问题,但我觉得有必要提醒大家,以这种方式实施网站将严重损害一个人的健康,因为有很多其他选择可以将OP提升到更高的生产力水平。这就是我的建议,是的。你问一个问题,你就会得到答案。如果他想独占地使用代码,这是可以做到的。许多人能够回答问题的原因之一是,我们可以获得许多观点,而这一观点当然属于这里。@spender:如下所述,泛型处理程序和HttpHandler是两种截然不同的东西。事实上,一个php(甚至java)用户使用通用处理程序会比使用完整的.net路径更自在。您可以插入不同的视图引擎-有六个左右可供选择。对不起。我的HttpHandler/泛型处理程序不好。在漫长的一周后,一些严重的误读仍在继续。请参阅我在JoshJordan的answerGeneric处理程序中的评论。通过.ashx,通用处理程序与httphandlers不同。通用处理程序与没有所有页面生命周期内容的aspx页面非常接近。。。然而,在.net中实现网站的方法列表中,最差的方法之一是使用通用处理程序编写网站,并不可避免地重新创建已经存在的框架。对我来说,转移到一个新平台的意义在于,它提供了更多的每一美元的收益。从PHP到泛型处理程序的转换似乎真的是一种横向的“提升”。+1。我以前必须这样做才能遇到一个相当疯狂的人