今天好不容易休息了一天,上网狂了一圈,突然想起了以前的一个轻量级的开发工具“SharpDeveloper”,于是就下载试着来开发一下ASP.NET,但是老魏没有想到的是,虽然官方提供了对ASP.NET MVC的支持,但是实际开发中却是问题多多啊。

当老魏使用SharpDeveloper建立了一个ASP.NET MVC的项目,正准备运行的时候,却发现了问题不是一般的大,虽然SharpDeveloper支持Express IIS,但是老魏并没有使用,而是用使用了IIS7,虽然如此但是在看了项目结构后,就发现有问题了。

看了上面的结构图,发现少了最主要的Controllers,Views,Models这几个文件夹,好吧,我们自己来建立。当我们创建了这几个文件夹后,的确可以创建Controller和View了,但是这里我们却需要注意的是,在创建Controller的时候需要注意的是一定要带上”Controller”后缀,否则在编译的时候不会把这个类当成Controller的。

我们创建了一个Controller,然后我们需要创建一个对象的View,可惜的是SharpDeveloper并没有提供在Action右键创建View的功能,只能是手动了。

好了,View也已经创建了,然后我们来改写一下Index.cshtml的内容,写一个HelloWorld。

、

这是第一个问题出现了,按照ASP.NET MVC的发布而言,IIS的设置是没有问题的,但是现在运行的时候却出现了这个问题。原因是什么呢?我们注意观察Views文件夹,发现比VS创建的ASP.NET MVC项目结构中少了一个非常重要的文件”Web.config”。那么好吧,我们把这个文件复制过来。但是运行的时候又发现了一个问题。还是403.14错误。这又是怎么回事呢?我们发现在Gloabl.asax中并没有初始化路由等配置,好,我们加上去。

publicclass MvcApplication : HttpApplication
{
publicstaticvoidRegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(newHandleErrorAttribute());
}
publicstaticvoidRegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // 路由名称
"{controller}/{action}/{id}", // 带有参数的 URL
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值
);
}
protectedvoidApplication_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
}

好编译一下,然后运行一下,发现的确可以运行了。到此SharpDeveloper的ASP.NET MVC配置就已经好了。

虽然我们配置好了ASP.NET MVC3的开发环境,但是我们这一路走来,却发现SharpDeveloper的确没有VS的那样强大,感觉SharpDeveloper就是一个玩具,只适合写一下简单的小程序,对于入门级的开发人员来还是不错的。整体上却不如VS强大。

在使用SharpDeveloper的时候,还遇到一些问题,比如代码不提示,使用数据库的时候需要导入手动导入System.Data.dll文件,对于ASP.NET MVC的Attribute的支持不够好,等等吧,一系列的问题,总之老魏在使用SharpDeveloper开发一个权限系统的时候绝对的是汗流浃背啊,解决了一个一个问题,最终还是遗憾的老魏没有坚持下来,最后还是改用VS来开发了,不过老魏认为SharpDeveloper未来的发展还是很不错的,希望SharpDeveloper能够像Eclipse一样,做出一个开源的,免费的,功能强大的IDE,如果到了那个时候,老魏第一个丢到庞大体积的VS的。不知道能不能等到这一天呢?

对于那些想使用SharpDeveloper的网友来说,尝尝鲜还可以,如果真的要做东西的时候,还是希望能够使用VS来开发,SharpDeveloper对于VSS而言是不支持的,所以这个还是个问题,对于SVN的支持比较蛋疼了,只能使用对应的版本,哎!问题多多啊!

好了,今天就到这里吧,明天接着加班,顺便说一下,老魏还是在4月份正式的更新Blog!

SharpDeveloeper开发ASP.NET MVC汗流浃背的更多相关文章

  1. ASP.NET安全[开发ASP.NET MVC应用程序时值得注意的安全问题](转)

    概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 ...

  2. 使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus

    最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错 ...

  3. 基于BUI开发Asp.net MVC项目

    因工作性质参于并开发过一些Web应用程序,前端项目框架也用了不少,比如MiniUI.ExtJS.以及定制的项目前端框架.无意中看到BUI前端框架,第一眼就被它的优雅布局所吸引.简洁的项目门户Banne ...

  4. 不使用Visual Studio开发ASP.NET MVC应用(下篇)

    书接上回! 前文“纯手工”.彻底抛弃Visual Studio,制作了一个ASP.NET MVC应用,运行起来还不错,项目目录.源代码.web.config等所有东西都已经做到“最简”,除去了Visu ...

  5. 不使用Visual Studio开发ASP.NET MVC应用(上篇)

    入行十多年,工作闲暇,还是对信息技术比较关注,经常测试一些新的技术,感受一下科技发展给大家带来的便利.Visual Studio接触也有年头了,对它总感觉乎近乎远的,既熟悉又陌生,一直没有像用别的工具 ...

  6. 开发ASP.NET MVC设置统一的命名空间

    当你创建一个全新的ASP.NET MVC专案之后,你想设置统一的命名空间,从可以下面几次入手. 首先设置专案的属性: 第二步,打开Views/Web.config文件,修改: 第三步,修改路由文件的命 ...

  7. 开发ASP.NET MVC 在线录音录像(音视频录制并上传)

    最近有个在线招聘录音的开发需求,需要在招聘网站上让招聘者上传录音和视频. 找到两个不错的javascript开源,可以在除了IE以外的浏览器运行. https://github.com/mattdia ...

  8. 开发ASP.NET MVC 开发名片二维码生成工具 (原创)

    在网上找了很多,都只能生成网址,不能生成名片二维码,于是自己动手. 第一步,写视图界面,主要代码如下: <script type="text/javascript"> ...

  9. (转)asp.net mvc 开发环境下需要注意的安全问题(一)

    概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 ...

随机推荐

  1. TensorFlow安装与测试

    官网:http://tensorflow.org/安装步骤:1.sudo apt-get install python-pip python-dev python-virtualenv 2.virtu ...

  2. Struts2的零配置和rest插件

    1. 零配置使用struts2-convention-plugin-2.3.16.jar,rest使用struts2-rest-plugin-2.3.16.jar 1.1 Struts2的conven ...

  3. Java 自带性能监控工具:监视和管理控制台jconsole的使用

    关于JConsole工具的使用请参见:http://blog.csdn.net/defonds/article/details/45064297

  4. poj 2057 树形dp 贪心

    思路:设sum[i],le[i],back[i],worm[i]分别表示以i为根节点需要的完成步数,叶子节点数,失败回退步数,以及i是否有虫. #include<iostream> #in ...

  5. 转:nginx 从入门到精通的博文

    转:http://tengine.taobao.org/book/ Nginx开发从入门到精通   缘起 nginx由于出色的性能,在世界范围内受到了越来越多人的关注,在淘宝内部它更是被广泛的使用,众 ...

  6. hdu 3938 Portal

    Portal Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Sub ...

  7. linux两种增加交换分区(swap)的方法

    在安装Oracle后,为使Oracle流畅运行,需要手动增加linux的交换分区(相当于Windows下的虚拟内存)的大小,本文介绍两种增加交换分区(swap)的方法. 第一种方法:新建分区 1.fd ...

  8. 谈在一个将TXT按章节分割的PHP程序中的收获

    最近在做一个自动分割txt小说的东西,能够将一整个txt文件按照章节进行分割,然后分解成一个个小的.txt文件保存起来并且能够获取有多少章节和每章的章节名. 我最初的想法是: ① 先使用fopen打开 ...

  9. Jersey(1.19.1) - Representations and Java Types

    Previous sections on @Produces and @Consumes referred to MIME media types of representations and sho ...

  10. 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)

    申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)具体步骤如下:                                                     ...