越来越多的开发团队開始使用64位操作系统作为开发环境,也计划将应用部署在安装有64位操作系统的server上。对于ASP.Net开发人员来说。使用64位环境开发部署须要注意下面几个问题。可在项目过程中节省不少时间。

1.ASP.Net在64位环境开发部署的常见故障

非常多开发人员在使用64位操作系统时。在ASP.Net应用中使用了指定64位版本号程序库。

比如一些专门的数据库驱动、设备驱动,但依旧出现下面错误提示信息:

未能载入文件或程序集“……”或它的某一个依赖项,试图载入格式不对的程序。

 造成这样的故障的原因是。大部分ASP.Net编译器和容器并没有默认设置为64位,而是以32位兼容模式执行。

此时。假设将程序库更换为32位。则系统执行正常。若打算坚持使用64位程序集,可根据下文所述方法进行设置。

2.Visual Studio自带的IISExpress设置

在64位操作系统中。Visual Studio自带的IIS Express是32位的。假设须要Visual Studio使用IIS Express调试使用64位程序集的ASP.Net应用。应使用64位版本号的IIS Express。

设置方法例如以下:

(1)关闭正在执行的IIS Express实例;

(2)单击主菜单上的“工具”-“选项”命令,打开选项对话框;

(3)在选项对话框文件夹树中“项目和解决方式”-“Web项目”标签,勾选“对网站和项目使用IIS Express的64位版本号”条目。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2hpemhlYnN5cw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

3.Visual Studio公布Web项目时的设置

在Visual Studio公布ASP.Net项目时,假设设置了在公布期间预编译功能。Visual Studio将调用ASP.Net编译器对项目进行编译。

 

该编译器默认选择的是32位编译器,而Visual Studio未提供不论什么配置管理界面。更换64位编译器的方法为:

(1)找到当前公布Web的配置文件名。本例中的文件名为PublishConfig;

 

(2)在解决方式资源管理器的Properies文件夹下,找到相应的配置文件。打开进行编辑;

 

(3)在该配置文件里加入下列语句:

<AspnetCompilerPath>[Microsoft .Net Framework路径]\ Framework64\[版本号号]</AspnetCompilerPath>

比如:

<AspnetCompilerPath>C:\Windows\Microsoft.NET\Framework64\v4.0.30319</AspnetCompilerPath>

注意:Visual Studio 2010曾经的版本号配置方法有所不同。临时未找到相应解决方式,可选择不进行预编译。

4.64位Windows Server上的IIS设置

IIS能够针对详细的ASP.Net应用设置是否以64位环境执行,详细的操作方法例如以下:

(1)部署Web网站后,打开Internet 信息服务(IIS)管理器。

(2)在文件夹中选择应用程序池。选择目标网站的应用配置,通过右键菜单打开高级设置;

(3)将启用32位应用程序选项设置为False。应用将以64位环境执行。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2hpemhlYnN5cw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

5.编译器是否须要在解决方式配置中设置x64平台

关于此问题,我查阅过一些文档,同一时候也进行了实验。个人观点例如以下:

(1)普通的ASP.Net项目无需进行平台的设置,平台设置为x86和x64均不影响项目的编译和公布,因此使用默认的Any CPU平台就可以。

(2)对于使用了有环境限制程序集的项目。如系统驱动、数据库驱动,最好是配置相应平台。

在公布时环境异常,能够获取很多其它有效的信息。节省调试时间。

后记

诸多开发人员都对微软的文档不满。软件project师与律师的职业属性不同,每日不可能有诸多时间消耗在翻阅相似于法典的MSDN文档中。

而我们希望的是能够针对可能出现故障的频率来组织开发资料,这样开发人员将少走非常多弯路。

ASP.Net在64位环境开发部署常见问题的更多相关文章

  1. win7win8 64位汇编开发环境合集安装与设置

    win7win8 64位汇编开发环境合集安装与设置 下载 win7 win8  64位汇编开发环境.rar 下载地址(免积分下载) http://download.csdn.net/detail/li ...

  2. asp.net C# int 类型在32/64位环境下取值范围无变化

    最近在学习中突然想到,我在64位环境下,int取值范围是否有变化?为了检测这个结果,我做了以下这个测试:1.环境:win7旗舰版64位+vs2010 sp1(版本号:10.0.40219.1SP1Re ...

  3. SSIS 64位环境访问Oracle11g

    SSIS 为了要能够在64位的机器上面让SSIS存取Oracle,当然需要安装64位的Oracle Provider,但是遇到最大的问题在于SSIS在执行的时候分成两种组件,分别是DTExec.exe ...

  4. Win7系统64位环境下使用Apache——Apache2.4整合Tomcat与mod_jk

    转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/70398091 本文出自[我是干勾鱼的博客] 之前的几篇文章: Win7系统64位 ...

  5. 【转载】SSIS 64位环境访问Oracle11g

    转载博客:http://www.dotblogs.com.tw/allanyiin/archive/2010/11/21/19585.aspx SSIS 为了要能够在64位的机器上面让SSIS存取Or ...

  6. 利用Code::Blocks搭建64位C++开发平台

    0.前言 随着64位计算机的普及,编写64位程序成为程序员基本的要求.我在<体验Code::Blocks下的C++编程>中描述了利用Code::Blocks官方提供的封装了编译器的安装包( ...

  7. 【Oracle】在WIN NT 64位环境下安装win64_11gR2_database。并用PL/SQL连接

    因为现在大多数服务器环境均为64位环境,而且有一部分使用的windows server的环境,在此做了一番小研究,如何在64位环境下安装oracle11g_64bit服务端 (1)首先www.orac ...

  8. 64位环境中使用SQL查询excel的方式解决

    --64位环境中使用SQL查询excel的方式 环境: OS:Windows Server 2008 R2 Enterprise MSSQL:Microsoft SQL Server 2008 R2 ...

  9. [转]windows10 64位环境下安装mysql5.7.17

    今天以zip模式在windows10 64位环境下安装mysql5.7,到最后一步提示mysql服务无法启动. 安装步骤如下: 1.配置环境变量 我的电脑->属性->高级->环境变量 ...

随机推荐

  1. 使用wubi安装ubuntu14.04出现的常见错误的解决办法

    花了一天的时间终于安装上了Ubuntu14.04,过程坎坷,是血泪史,开始报“cannot download the metalink and therefore the ISO”错误,解决后,又报“ ...

  2. 推送GitHub报错 fatal: Out of memory, malloc failed 解决办法

    现象: 推送GitHub时,出现如下报错 fatal: Out of memory, malloc failed (tried to allocate XXXXXX bytes)error: fail ...

  3. nginx代理配置 配置中的静态资源配置,root 和 alias的区别。启动注意事项

    这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...

  4. 不容易系列之一(hdu1465)错排+递推

    不容易系列之一 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  5. linux 单引号,双引号,反引号

    单引号 目的: 为了保护文字不被转换.除了他本身. 就是说除去单引号外, 在单引号内的所有文字都是原样输出. 1. [root@jszwl161 SP49EP9]# echo '$*><! ...

  6. 汇编语言--微机CPU的指令系统(五)(字符串操作指令)

    (11)字符串操作指令 字符串操作指令的实质是对一片连续存储单元进行处理,这片存储单元是由隐含指针DS:SI或ES:DI来指定的.字符串操作指令可对内存单元按字节.字或双字进行处理,并能根据操作对象的 ...

  7. js 面向对象 ES5 AND ES6

    1. ES5实现 父类: // 职员类 function Employees(id,name,salary) { // 属性 this.id = id; this.name = name; this. ...

  8. couldn't resolve host api.weixin.qq.com

    1.代理服务器突然出现 couldn't resolve host api.weixin.qq.com 不知原因 2.重启nginx无效-----代码肯定没有动过(之前出现过,过了一天恢复) 3.防火 ...

  9. 前端入门2-HTML标签

    本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 声明 本系列文章内容全部梳理自以下四个来源: <HTML5权威指南> <JavaScript权威指南> MD ...

  10. BZOJ4916: 神犇和蒟蒻(杜教筛)

    题意 求 $$\sum_{i = 1}^n \mu(i^2)$$ $$\sum_{i = 1}^n \phi(i^2)$$ $n \leqslant 10^9$ Sol zz的我看第一问看了10min ...