ASP.Net MVC 4项目升级MVC 5的方法

1、备份你的项目

2、从Web API升级到Web API 2,修改global.asax,将

WebApiConfig.Register(GlobalConfiguration.Configuration);

 

修改为

GlobalConfiguration.Configure(WebApiConfig.Register);

 

3、通过Nuget,更新下面的包

包名                                           

旧版本

新版本

Microsoft.AspNet.Razor

2.0.x.x

3.0.0

Microsoft.AspNet.WebPages

2.0.x.x

3.0.0

Microsoft.AspNet.WebPages.WebData

2.0.x.x

3.0.0

Microsoft.AspNet.WebPages.OAuth

2.0.x.x

3.0.0

Microsoft.AspNet.Mvc

4.0.x.x

5.0.0

Microsoft.AspNet.Mvc.Facebook

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.Core

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.SelfHost

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.Client

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.OData

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.WebHost

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.Tracing

4.0.x.x

5.0.0

Microsoft.AspNet.WebApi.HelpPage

4.0.x.x

5.0.0

Microsoft.Net.Http

2.0.x.

2.2.x.

Microsoft.Data.OData

5.2.x

5.6.x

System.Spatial

5.2.x

5.6.x

Microsoft.Data.Edm

5.2.x

5.6.x

Microsoft.AspNet.Mvc.FixedDisplayModes

 

Removed

Microsoft.AspNet.WebPages.Administration

 

Removed

Microsoft-Web-Helpers

 

Microsoft.AspNet.WebHelpers

4、更新根目录的web.config

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <!--Two elements removed for Clarity -->
    <dependentAssembly>
      <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
      <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
    </dependentAssembly>
    <dependentAssembly>
      <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
      <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
    </dependentAssembly>
    <dependentAssembly>
      <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
      <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
    </dependentAssembly>
    <!--WebGrease element removed for Clarity -->
  </assemblyBinding

 

  <appSettings>
    <add key="webpages:Version" value="3.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="PreserveLoginUrl" value="true" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>

 

  <securityPolicy>
   <!--<trustLevel name="Medium"  policyFile="web_mediumtrust.config"/>-->
</securityPolicy>

 

5、修改View文件夹下的web.config

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="System.Web.Mvc" />
      <!--Elements removed for Clarity.-->
    </namespaces>
  </pages>
</system.web.webPages.razor>

 

  -->
  <pages
      validateRequest="false"
      pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
      pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
      userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <controls>
      <add assembly="System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
    </controls>
  </pages>
</system.web>

 

<configuration>
  <configSections>
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
      <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    </sectionGroup>
  </configSections>

 

6、右键解决方案,选择卸载项目

7、右键项目,编辑 [ProjectName].csproj

8、找到 ProjectTypeGuids 节,删除Guid {E3E379DF-F4C6-4180-9B81-6769533ABE47},保存

9、右键项目,重新加载项目

Visual Studio 2013全球开售 售价公布

  Visual Studio 2013 与 .NET 4.5.1 正式面向全球开售,微软还同时推出了全新产品 Visual Studio Online,你可以使用该产品在微软 Windows Azure 云中进行开发。

Visual Studio 2013 全球开售在线版发布

  Visual Studio 2013 专业版 499 美元,专业版 +MSDN 订阅 799 美元,高级版 +MSDN 订阅 2569 美元,旗舰版 +MSDN 订阅 4249 美元。

  关于 Visual Studio 2013 我们之前已经为大家详细介绍过,今天着重来看一下微软的新产品 Visual Studio Online。根据微软官方描述,Visual Studio Online(原来的 Team Foundation Service),是项目数据在云中的主页。依托于微软的云基础架构,只需数分钟便可启动并运行,无需安装或配置任何服务器。设置一个包含一切的环境,从托管 Git 存储库和项目跟踪工具到持续集成和 IDE,全都封装在一个月度用户计划中。使用你喜欢的开发工具(如 Visual Studio、Eclipse 或 Xcode)就能连接到云中的项目。

  Visual Studio Online 提供 4 种版本,高级版、专业版、基础版、含 MSDN 的专业版,售价如下:

  Visual Studio Online 基础版,5 名用户免费,入门特价:每增加一名用户每月 10 美元,正常定价:每增加一名用户每月 20 美元。

  Visual Studio Online 专业版,入门特价:每个用户每月 22.50 美元,正常定价:每个用户每月 45 美元。

  Visual Studio Online 高级版,入门特价:每个用户每月 30 美元,正常定价:每个用户每月 60 美元。

  功能对比:

http://news.mydrivers.com/img/20131114/eaca86dafe6c4e9fbb3241c40df05b85.jpg

ASP.NET MVC中基于属性的路由

  在 ASP.NET MVC 4 以及之前的版本中,路由选择专门是通过向一个 RouteCollection 中添加路径来处理的。尽管开始的时候路由使用的是简单的约定,但是随着网站的发展以及特殊情况的积累,它会变得非常复杂。由于路由和它们所适用的控制器是物理隔离的,它能够采取一些侦探性的工作理解关系。

  随着 ASP.NET MVC 5 的引入,Microsoft 希望通过使用基于属性的路由简化体验。使用同样的基础模式语法作为命令模型,可以将声明式的 Route 属性应用到控制器方法上。

  为了给一个给定的控制器指定一个默认的路由,我们可以简单地向类中添加 Route 属性,属性路径为“{action=method}”,其中的“method”是默认方法的名字。你还可以将 RoutePrefix 属性应用到一个控制器上,这样可以减少控制器包含的路径的长度。Area 注册也可以废弃不用了,用户可以使用 RouteArea 属性替代。

  这些路由支持约束、可选 URI 参数以及默认值。MVC 约束遵循的规则和 Web API 基于属性的路由相同。

C#把ArrayList转换为逗号分隔的string

        static void Main(string[] args)
        {
            ArrayList arr = new ArrayList();
            arr.Add("算神");
            arr.Add("算神");
            arr.Add("算神");
            string str = string.Join(",", arr.ToArray(typeof(string)) as string[]);
            Console.WriteLine(str);
            Console.Read();
        }

Visual Studio 2013 新增改进后的项目模版及社交账号认证

  Visual Studio 2013 包括了新的项目模版及改善的用户体验,能让开发者更快速构建项目和应用。在新界面的帮助下,用户能够创建新的 MVC 项目并且很容易往项目中增加 Web Forms 页面,还可以在 Web Forms 项目中通过脚手架功能使用 Web API。

  当用户在 Visual Studio 2013 中创建 ASP.NET 项目时,能够在 home 页、关于页和联系页中进行基本的导航,此外还能使用 Bootstrap 创建网站的主题 ,无论你使用的是哪种技术――ASP.NET MVC、Web Forms、Web API、SPA。此外,Visual Studio 2013 可以通过 Windows、活动目录和如 Facebook、Twitter、微软账号、Google 等社交账号对用户进行认证,此外,按照项目的需求,Visual Studio 2013 还提供了更多的验证器(providers)。

  Visual Studio 2013 包括一个 Project_Readme.html 文件,这在创建新的项目时就会看到。这个文件包括了在 ASP.NET 中新特性一览和在创建项目后所需的步骤,同时也包括了关于主题定制、部署和网络上的其他资源信息。

  最新发布的 ASP.NET 中包含了 ASP.NET Identity,它是一套新的 membership 系统,能够轻易地将应用数据和用户特定的档案数据进行整合。它也允许你选择在应用中用户档案的持久化模型,包括将数据存储在 SQL Server 数据库,或者类似于 Windows Azure 存储表这样的 NoSQL 数据存储中的能力。

Microsoft.AspNet.Identity.Core.1.0.0, Microsoft.AspNet.Identity.EntityFramework.1.0.0和 Microsoft.AspNet.Identity.Owin.1.0.0 是与 ASP.NET Identity 功能相关的 NuGet 包。 ASP.NET web 优化框架包括用于提高 ASP.NET web 应用性能的如打包、压缩服务。

Microsoft.AspNet.Web.Optimization.1.1.1 以 NutGet 包方式提供,并且包含了 WebGrease Antlr 依赖库。另一方面,Microsoft.AspNet.Providers.Core 包用于存储应用中的 session 数据。

Microsoft.Owin.Security.ActiveDirectory, Microsoft.Owin.Security.Cookies,Microsoft.Owin.Security.Facebook, Microsoft.Owin.Security.Google, Microsoft.Owin.Security.Jwt,Microsoft.Owin.Security.MicrosoftAccount, Microsoft.Owin.Security.OAuth,Microsoft.Owin.Security.Twitter 均以 NuGet 包的形式发布以用于设置 MVC 个人账号、Web 表单、Web API 和 Web API 专用的组织账号时使用。

  Microsoft.AspNet.FriendlyUrls 包能让用户生成友好的 URL,其中一项功能能够让你添加一个视图切换功能,以使用户在移动设备和桌面视图间轻易地进行切换。此外,ScriptManager 控件提供了对 web 优化的支持,此外项目模版能让用户将 jquery 的打包引用注册到 ScriptManager 控件中。

  Visual Studio 2013 包括针对 ASP.NET MVC 和 Web API 项目改进的项目模版,其中包括一个内置帮助页(Microsoft.AspNet.WebAPI.HelpPage)的新模版。

PHP官网遭黑客入侵植入恶意程序

  PHP 语言官方网站被入侵植入了JavaScript 恶意代码,悄悄在浏览者电脑上安装恶意程序。但攻击者是通过哪个安全漏洞入侵系统 PHP.net 尚无头绪。

  PHP.net 已经连续发表了两个声明解释这次事故,称调查发现两台服务器被入侵,它们分别托管 www.php.net、static.php.net 和 git.php.net 域名,以及托管 bugs.php.net 域名,所有服务已经迁移到新的服务器。Git 源码库验证之后没发现问题。它怀疑攻击者可能访问了 php.net SSL 证书的私钥,因此撤销了证书,在新证书发布前 SSL 加密连接不可用。 php.net 宣布,未来几天所有用户将需要重置密码。根据 Alexa 排名,php.net 的排名排在第 228 位。

英文报道原文:

http://www.pcworld.com/article/2057980/phpnet-compromised-and-used-to-attack-visitors.html

微软正式发布Visual Studio 2013 RTM版

今天微软发布的软件似乎数量不少,除了我们前面几篇新闻谈到Windows 8.1、Windows Embedded 8.1 Industry以及90天评估版的Windows 8.1 Enterprise之外,微软还发布了Visual Studio 2013的最终版本、.NET 4.5.1以及Team Foundation Server 2013。现在这些软件都可以进行下载。

在博客中,微软开发者部门(Developer Division)的企业副总裁S. Somasegar说:“对每一名开发者来说,Visual Studio 2013都提供了全新的特性与更出色的功能,包括如Peek、CodeLens这样的创新编辑增强功能,为UI响应与能耗准备的诊断工具,对ASP.NET网页开发的重要更新,支持Git方式管理与敏捷的组合管理扩展ALM功能等等。

他还说,VS2013当然也可用于开发者开发全新的Windows 8.1应用。感兴趣的用户现在都可在网上下载该软件,不过微软仍计划在11月13日为Visual Studio 2013举行一场官方发布会,发布会上将会提及更多这款新工具的提升细节和新特性。软件价格和2012各版本保持相同,不过如果用户先前已经购买Visual Studio 2012 Professional,那么自今年11月1日至2014年1月31日都可以99美元的价格升级到Visual Studio Professional 2013。

下载地址:http://www.microsoft.com/visualstudio/chs/downloads

PS:目前还没Key泄漏出来,如果急需用Key可以私聊我讨论下解决方案,你懂的

CentOS安装中文语言包教程

其中通过 yum 方式安装的最简单快速:

yum groupinstall Chinese-Support

装完中文语言包之后,它不会自己变成中文,得修改文件/etc/sysconfing/i18n,没有的话创建!内容改成如下:

LANG="zh_CN.GB2312"  
SUPPORTED="zh_CN.GB2312:zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"

vi编辑完成后保存退出 ,输入 reboot 重启后,即可支持中文。

新的.NET编译器——RyuJIT 项目

  Microsoft 正在开发一个新的即时(Just-In-Time,JIT)编译器,该编译器最终会被用于运行 .NET 应用程序。新编译器的代号为“RyuJIT”,它标志着设计哲理的变化。现在的 64 位 JIT 编译器是为了支持在服务器环境中发现的操作配置文件而设计的,这种情况下的执行性能要优于启动性能。为了获得额外的性能提升它还依赖了像 NGen 和后台 JIT 这样的支持技术。但是 RyuJIT 的设计目标考虑了 64 位代码在服务器之外的计算平台上的流行程度。因此,与现在的 x64 JIT 相比,RyuJIT 强调整体的性能提升,包括缩短了应用程序启动时间。

  Microsoft 从事 RyuJIT 项目的一位程序经理 Andrew Pardoe 注意到,一直到现在为止 .NET CodeGEN 团队一直在管理两个独立的代码库,一个针对 X64 .NET JIT 编译器,一个针对 X86 .NET JIT 编译器。RyuJIT 是基于目前 X86 .NET JIT 编译器代码库的。它的最终目标是让 RyuJIT 项目成为现在以及将来所有架构(X86、 X64、ARM 等)上的 .NET JIT 编译器。现在的 RyuJIT 仅支持 X64 架构,同时还有一个针对 64 位 Windows 8.1 和 Windows Server 2012 R2 的社区技术预览版(CTP)。

  安装了 CTP 之后你将能够根据自己的需要体验新的编译器,它并不会替代现在正在使用的 X64 JIT 编译器。如果想要使用 RyuJIT 有两种方式可以选择,或者使用下面的环境变量:COMPLUS_AltJit=*;或者创建一个新的值为*的字符串注册表键 HKEY_Local_Machine\SOFTWARE\Microsoft\.NETFramework\AltJit 。注意,RyuJIT 现在并不支持编辑并继续(Edit & Continue),但是将来的版本将会支持该功能。Microsoft 的 Kevin Frei 声明说,虽然现在的 RyuJIT 仅支持 Windows 8.1 和 Server 2012 R2,但是最终版本的 RyuJIT 将会是完整 .NET 运行时的一部分,在 .NET 支持的所有平台上都将获得完整的支持。

Visual Studio 2013售价曝光

微软计划于11月13日正式发售Visual Studio 2013,其售价方面也与Visual Studio 2012相似.而如果你是一位MSDN或TechNet订阅用户的话可以在10月18日,即Windows 8.1发布的当天提前下载Visual Studio 2013 RTM版本.

Visual Studio 2013

Visual Studio 2013售价分别为:专业版499美元,专业版+MSDN订阅799美元,高级版+MSDN订阅2569美元,终极版+MSDN订阅4249美元.微软还将特别为Visual Studio 2012专业版发布更新包,用户可以从11月1日至明年1月31号以99美元的活动价升级至Visual Studio 2013.该升级包原价为299美元.