抛开Visual Studio纯手工开发ASP.NET应用(visual studio移动开发)

前言

入行十多年,工作闲暇,还是对信息技术比较关注,经常测试一些新的技术,感受一下科技发展给大家带来的便利。Visual Studio接触也有年头了,对它总感觉乎近乎远的,既熟悉又陌生,一直没有像用别的工具一样发自内心的喜欢。想想还是因为微软求大求全的策略,而且还在自己工具上绑定一堆用不着的功能所造成的。近两年一直接触Linux,深深的被它的设计思想和理念感染了,导致现在是能不用微软的东西就不用,能在Linux平台实现的就不考虑Windows。

也不知是处女座还是强迫症,我这人向来喜欢用最新版工具软件、最新的技术,不想为玩代码,安装一套Visual Studio,因为它太大了,真的是太大了,离线安装文件27G,只安装ASP.NET Web开发工具要4个多G,我需求这么简单,装那么大的IDE干嘛?不知微软怎么想的?

或许是上面这些原因启发了我,何不抛开Visual Studio,从零开始构建一个ASP.NET 程序呢?

(牢骚完毕,正文开始)


工具:

文章实现参考了:http://stackoverflow.com/questions/6783378/how-to-develop-a-simple-asp-net-mvc-project-without-visual-studio。我的实现和stackoverflow有点不一样,并且加入了对Entity Framework的支持,另外要说明,这篇文章改编自cnblogs那篇,也是我写的。

需要安装的软件

  1. ASP.NET MVC3 with Tools

https://www.asp.net/downloads/previous

如果不想安装这个,或因为版本旧找不到,可以直接从[1]或[2]下载(文章结尾有地址)

2. .NET Framework(with csc.exe tool),这个自己百度吧,建议去Microsoft官网下载,最新版.NET 4.6或4.7都可以

安装好上面两个必备工具后,接着下面步骤:

3. Visual Studio Code(可选),这个主要用来编写代码,你也可以用任意自己喜欢的文本编辑器

4. IIS Express(可选)[3],这个用来运行开发完成的ASP.NET程序


步骤:

第一步:随便找个空文件夹,我们叫它项目根目录“/”,在根目录/下建立文件HomeController.cs文件,输入以下代码:

using System.Web.Mvc;

namespace MyApplication

{

public class HomeController : Controller

{

public ActionResult Index()

{

return View();

}

}

}

第二步,在根目录/下,建立Global.asax文件,输入下面代码:

<%@ Application Codebehind=\”Global.asax.cs\” Inherits=\”MyApplication.MvcApplication\” Language=\”C#\” %>

第三步,在根目录/下,建立Global.asax.cs文件,输入代码:

using System.Web.Mvc;

using System.Web.Routing;

namespace MyApplication

{

public class MvcApplication : System.Web.HttpApplication

{

protected void Application_Start()

{

Routeconfig.RegisterRoutes(RouteTable.Routes);

}

}

}

第四步,在目录/App_Start下建立RouteConfig.cs文件,输入代码:

using System.Web.Mvc;

using System.Web.Routing;

namespace MyApplication

{

public class RouteConfig

{

public static void RegisterRoutes(RouteCollection routes)

{

routes.MapRoute(

name: \”Default\”,

url: \”{controller}/{action}/{id}\”,

defaults: new { controller = \”Home\”, action = \”Index\”, id = UrlParameter.Optional }

);

}

}

}

第五步,在/Views/Home目录下建立Index.cshtml,输入代码:

<!DOCtype html>

<html>

<head>

<meta charset=\”utf-8\” />

<title>Home</title>

</head>

<body>

<h1>Home Page.</h1>

</body>

</html>

第六步,在/Views目录下建立web.config文件,输入代码:

<?xml version=\”1.0\”?>

<configuration>

<configSections>

<sectionGroup name=\”system.web.webpages.razor\” type=\”System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35\”>

<section name=\”host\” type=\”System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35\” requirePermission=\”false\” />

<section name=\”pages\” type=\”System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35\” requirePermission=\”false\” />

</sectionGroup>

</configSections>

<system.web.webPages.razor>

<host factoryType=\”System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35\” />

<pages pageBaseType=\”System.Web.Mvc.WebViewPage\”>

<namespaces>

<add namespace=\”System.Web.Mvc\” />

<add namespace=\”System.Web.Mvc.Ajax\” />

<add namespace=\”System.Web.Mvc.Html\” />

<add namespace=\”System.Web.Routing\” />

<add namespace=\”MyApplication\” />

</namespaces>

</pages>

</system.web.webPages.razor>

<appSettings>

<add key=\”webpages:Enabled\” value=\”false\” />

</appSettings>

</configuration>

第七步,在根目录/下建立web.config文件,输入代码:

<?xml version=\”1.0\”?>

<configuration>

<appSettings>

<add key=\”webpages:Enabled\” value=\”false\”/>

</appSettings>

<system.web>

<compilation targetFramework=\”4.5\”>

<assemblies>

<add assembly=\”System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35\”/>

<add assembly=\”System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35\”/>

</assemblies>

</compilation>

<customErrors mode=\”Off\”/>

</system.web>

</configuration>

第八步,在根目录/下建立bin文件夹,为方便编译,将文件C:Program Files (x86)Microsoft ASP.NETASP.NET MVC 3AssembliesSystem.Web.Mvc.dll拷贝进去,打开命令提示符,执行以下命令,将源代码编译为dll:

C:WindowsMicrosoft.NETFramework64v4.0.30319csc.exe /t:library /out:binMyApplication.dll /r:\”binSystem.Web.Mvc.dll\” ControllersHomeController.cs Global.asax.cs App_StartRouteConfig.cs


完成:

没有任何错误的话,bin目录下应该已经生成了MyApplication.dll文件。

编译完后,可以将下列文件发布到阿里云或任意一个装了IIS且支持ASP.NET的Windows服务器,打开浏览器,应该可以看到期待的结果了。

binMyApplication.dll

Views*

Global.asax

web.config

注:按照ASP.NET的目录结构规范,可以把上面HomeController.cs放到Controllers文件夹里更合适,同时记得修改编译命令里对应路径。

如果你在测试的时候遇到任何问题,欢迎留言。下一篇我将介绍如何在这个ASP.NET MVC项目里加入Entity Framework和Mater Page的支持。

附录:

[1]http://go.microsoft.com/fwlink/?LinkID=215693

[2]http://files.cnblogs.com/files/andy65007/System.Web.Mvc.zip

[3]IIS Express:打开微软官网https://www.microsoft.com/zh-cn/ ,在右上角搜索框输入Internet Information Services (IIS) 10.0 Express,64位系统下载这个iisexpress_amd64_zh-CN.msi

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年3月16日 上午9:21
下一篇 2023年3月16日 上午9:31

相关推荐

  • 陕西省安管人员考试管理平台

    陕西省安管人员考试管理平台 陕西省安管人员考试管理平台是陕西省政府为了加强安管人员队伍建设,提高安管人员素质而开发的一款考试管理工具。该平台提供了各种考试相关的功能,包括考生信息管…

    科研百科 2024年11月11日
    6
  • 看《DOOM启世录》谈游戏项目管理(doom启示录)

    文/瞿炎长 作者简介:老瞿,游戏制作人,冷笑话制造王,修炼特别快,人称瞿快练。 如果仅选一本,这就是我唯一给游戏设计师推荐的书。 现在流行直播带货。 而我喜欢给年轻的策划推荐各类书…

    科研百科 2022年7月25日
    264
  • 写字楼管理APP开发解决方案(写字楼 app)

      办公的智能化除了在工作时用到的工具智能化,还有就是所在的工作环境的智能化也会为你的工作带来更佳服务体验。写字楼管理APP开发是标志着写字楼 互联网,通过互联网打造一个智能物业办…

    科研百科 2022年7月10日
    236
  • 苹果电脑有什么免费的图片查看软件

    苹果电脑有什么免费的图片查看软件 随着苹果电脑的普及,越来越多的人开始使用苹果电脑来工作,学习,娱乐等。而苹果电脑上的图片查看软件也是不可或缺的工具之一。今天,我们将介绍一些苹果电…

    科研百科 2024年10月19日
    3
  • 软件项目 进度计划表

    软件项目进度计划表 在开始编写软件项目进度计划表之前,我们需要先确定项目的目标和范围。这些目标和范围将帮助我们确定需要完成的任务和时间表。 在确定了项目的目标和范围之后,我们可以开…

    科研百科 2024年9月1日
    38
  • 合见工软发布多款EDA产品和解决方案(上海合见工业软件集团公司)

    上海合见工业软件集团有限公司(简称“合见工软”)近日推出多款EDA产品和解决方案,以更好地解决芯片开发中的功能验证、调试和大规模测试管理,以及先进封装系统级设计协同等不同任务的挑战…

    2022年6月29日
    259
  • 科研支撑项目建设目前存在的问题困难和不足

    科研支撑项目建设目前存在的问题困难和不足 近年来,我国在科技创新方面取得了巨大进展,但科研支撑项目建设仍然存在一些问题和不足,这些问题和不足对科技创新的发展带来了不利影响。 一、项…

    科研百科 2024年10月29日
    5
  • 大学生科研项目有哪些 大学生科研项目课题有哪些

    大学生科研项目课题有哪些 近年来,随着高等教育的不断发展,大学生科研项目课题越来越受到重视。大学生科研项目课题不仅有助于提高学生的科研能力和创新能力,还能帮助学生更好地适应未来的就…

    科研百科 2024年7月29日
    60
  • 合同管理年终总结

    合同管理年终总结 尊敬的各位领导、同事: 时光荏苒,转眼又到了合同管理年终总结的时候。回顾过去一年,我们在合同管理方面取得了一些成绩,同时也遇到了一些挑战。在此,我将对过去一年的工…

    科研百科 2024年8月25日
    31
  • 一份以前写的弱电项目工作总结(一份以前写的弱电项目工作总结怎么写)

    前言: 今天无意中看到自己2011年写的工作总结,自己读了一遍,感觉还有点东西,拿出来分享一下,也许对一些新手写总结的时候有所帮助。 正文: 工作总结: 一、综述 本年我项目部共执…

    科研百科 2022年12月4日
    205