SharpDeveloeper开发ASP.NET MVC汗流浃背
今天好不容易休息了一天,上网狂了一圈,突然想起了以前的一个轻量级的开发工具“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汗流浃背的更多相关文章
- ASP.NET安全[开发ASP.NET MVC应用程序时值得注意的安全问题](转)
概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 ...
- 使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus
最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错 ...
- 基于BUI开发Asp.net MVC项目
因工作性质参于并开发过一些Web应用程序,前端项目框架也用了不少,比如MiniUI.ExtJS.以及定制的项目前端框架.无意中看到BUI前端框架,第一眼就被它的优雅布局所吸引.简洁的项目门户Banne ...
- 不使用Visual Studio开发ASP.NET MVC应用(下篇)
书接上回! 前文“纯手工”.彻底抛弃Visual Studio,制作了一个ASP.NET MVC应用,运行起来还不错,项目目录.源代码.web.config等所有东西都已经做到“最简”,除去了Visu ...
- 不使用Visual Studio开发ASP.NET MVC应用(上篇)
入行十多年,工作闲暇,还是对信息技术比较关注,经常测试一些新的技术,感受一下科技发展给大家带来的便利.Visual Studio接触也有年头了,对它总感觉乎近乎远的,既熟悉又陌生,一直没有像用别的工具 ...
- 开发ASP.NET MVC设置统一的命名空间
当你创建一个全新的ASP.NET MVC专案之后,你想设置统一的命名空间,从可以下面几次入手. 首先设置专案的属性: 第二步,打开Views/Web.config文件,修改: 第三步,修改路由文件的命 ...
- 开发ASP.NET MVC 在线录音录像(音视频录制并上传)
最近有个在线招聘录音的开发需求,需要在招聘网站上让招聘者上传录音和视频. 找到两个不错的javascript开源,可以在除了IE以外的浏览器运行. https://github.com/mattdia ...
- 开发ASP.NET MVC 开发名片二维码生成工具 (原创)
在网上找了很多,都只能生成网址,不能生成名片二维码,于是自己动手. 第一步,写视图界面,主要代码如下: <script type="text/javascript"> ...
- (转)asp.net mvc 开发环境下需要注意的安全问题(一)
概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 ...
随机推荐
- linux的cron服务及应用
Linux下的Cron用于定时执行设置的周期性指令,是Linux的内置服务,可以用以下的方法启动.关闭这个服务: /sbin/service crond start //启动服务 /sbin/serv ...
- 给jdk写注释系列之jdk1.6容器(2)-LinkedList源码解析
LinkedList是基于链表结构的一种List,在分析LinkedList源码前有必要对链表结构进行说明. 1.链表的概念 链表是由一系列非连续的节点组成的存储结构,简单分下类的话,链 ...
- [改善Java代码]Java的泛型是类型擦除的
泛型可以减少强制类型的转换,可规范集合的元素类型,还可以提高代码的安全性和可读性,正是因为有了这些优点,自从Java引入泛型之后,项目的编码规则上便多了一条,优先使用泛型. Java泛型(Generi ...
- Socket编程初探
一.什么是Socket? 通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.在Internet上的主机一般运行了多个服务软件,同时提供几种服务.每种服务都打开一个S ...
- ActiveMQ(5.10.0) - Destination-level authorization
To build upon authentication, consider a use case requiring more fine-grained control over clients t ...
- (Android)View.getHeight或getWidth为0时的一些解决方案
在Android开发过程中,经常需要动态的更改View的大小,有些View的大小可能需要根据其他View的大小来设定,或者你需要得到一些View的大小来进行某项操作,但是有可能你需要在onCreate ...
- MDAC 在WINDOWS XP SP3 不能安装 的解决方法
MDAC 在WINDOWS XP SP3 不能安装 的解决方法 解决步骤如下: c:/windows/inf 下找出mdac.inf 然后点右键->安装.在弹出提示路径选取c:/windows/ ...
- datatable dateset 载体传递数据、存储过程
第一部分:数据库通过存储过程读取数据,通过datatable接受,前台通过asp:repeater.DataSource()和binding()绑定数据 /// <summary> /// ...
- Easyui 加载树(easyui-tree)[dotnet]
前台 html: <ul class="easyui-tree" id="ul_Tree" data-options="fit:true,ani ...
- String.Trim
String.Trim有2个重载方法,分别是:Trim()和Trim(char[]),根据官方的解释 Trim():从当前String对象移除所有前导空白字符和尾部空白字符. Trim(char[]) ...