今天好不容易休息了一天,上网狂了一圈,突然想起了以前的一个轻量级的开发工具“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. I2C驱动程序

    i2c_add_driver i2c_register_driver driver->driver.bus = &i2c_bus_type; driver_register(&d ...

  2. java调用.net asmx服务

    有时候,在java下开发会调用一下.net下写的服务,看网上有各种方法,但总是不成功,总结下自己测试过能调用成功的方式: 1. 原始方式http-soap public static String p ...

  3. 原生js 实现的瀑布流

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  4. 软件设计师考试计算机系统知识——CPU

    第一章: 计算机系统知识 1.1.1计算机系统硬件的基本组成 运算器.控制器.存储器.输入设备.输出设备 1.1.2 中央处理器 ①CPU的功能: a.程序控制:CPU通过执行指令来控制程序执行的顺序 ...

  5. Ajax具体使用

    Ajax在注册页面经常使用,当注册用户是用户名必须唯一时,要使用ajax获取表单中你输入的内容, 然后将这个数据利用XMLHttpRequest对象请求一个php文件,这个php文件接收到信息,查询数 ...

  6. SparkSQL之数据源

    准备json文件: cat /root/1.json {"name":"Michael"} {"name":"Andy" ...

  7. HDOJ2026首字母变大写

    首字母变大写 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  8. 在多个linux服务器上执行一个命令

    把服务器的ip地址写到list.txt中 192.168.37.3 192.168.37.4 192.168.37.6 然后运行 for i in `cat list.txt`;do ssh user ...

  9. sqlserver2008 如何定时清理索引碎片

    sqlserver2008 如何定时清理索引碎片 查询索引引起的表垃圾碎片sql脚本:  SELECT object_name(a.object_id) [TableName] ,a.index_id ...

  10. ListView控件的用法

    listView是一个可以用来显示视图列表的控件. 它使用适配器来为之提供数据和资源. ListView使用的基本步骤 得到ListView类型的对象mListView 生成适配器对象mListVie ...