ASP.NET 2.0网站专案同时使C#与VB.NET之技巧(新书连载)

news/2024/4/27 8:51:29/文章来源:https://blog.csdn.net/zhaowei001/article/details/2001986

ASP.NET 2.0网站专案同时使C#VB.NET之技巧(新书连载)

你知道专案ASP.NET 2.0网站要如何同时使用C#VB.NET两种语言及多组件的技巧吗?

 

节录自【圣殿祭司的ASP.NET 2.0专家技术手册】新书

  在以往VS.NET 2002VS.NET 2003Visual Studio工具本身不支援多个组件档(Assembly),也就是专案编译后只会产生一个.dll组件,而一个组件只允许包含一种语言(因为系统会呼叫对应C#VB编译器进行编辑),因此在同一个专案中要使用两种语言是办不到的;但是在VS 2005因为专案支援多个组件,所以利用这个特性就可以同时使用两种以上的语言如C#VB.NET,因此.cs.vb的类别在专案中就可以直接拿来使用,直接就可以new instance,并不需要先编译成.dll档再加以引用,如此对于许多公司或程式设计师弹性变大了,算是一大福音。

   至于专案支援多个组件是如何办到的?在前面有提到ASP.NET中有许多内建特殊资料夹,如APP_CodeApp_GlobalResources等等,只要归类在这些资料夹的档案在编译时就会产生独立的组件,各位可以建立一个专案进行测试,加入类别档、资源档、Web Services等等,最后再用aspnet_comipler.exe先行编译后,再检查编译后目标路径的bin目录,里面同时包含好几个.dll档就是证据。

范例2-12 专案同时使用C#VB类别程式
而利用多个组件的原理,在VS 2005专案中可以同时使用C#VB类别程式,但仍必须遵守一些程序及技巧来达成,当然这必须祭司传授给你才行得通。


2-54 多语言专案执行画面



上面的directoryName 是对应下一个步骤csvb是所要加入的目录名称。

Step 3
:在App_Code建立C#VB目录分隔
(1)
请在网站按滑鼠右键选择【属性页】说i加入ASP.NET资料夹】诳[入「App_Code」资料夹。
(2)
接着在App_Code资料夹底下加入「CS」及「VB」两个资料夹,以作为C#VB类别各自存放的目录。



2-55 建立不同语言目录



Step 4
:加入C#VB类别程式
(1)
请在CS资料夹中加入C#类别,CSharpObject.cs类别程式如下:
01 using System;
02 public class CSharpObject
03 {
04
  public string Hello()
05
  
{
06
   
return "Hi...C#";
07
  
}
08 }

(2) 
请在VB资料夹中加入VB类别,VBObject.vb类别程式如下:

01 Imports Microsoft.VisualBasic
02
03 Public Class VBObject
04
  Public Function Hello() As String
05
   
Return "Hi...VB"
06
  
End Function
07 End Class

Step 5
:使用类别程式

请在「呼叫C#类别」及「呼叫VB类别」两个按钮加入Click事件程式:
01 //
呼叫C#类别
02 protected void btnCSharp_Click(object sender, EventArgs e)
03 {
04
  CSharpObject myCSharpObject = new CSharpObject();
05         txtMsg1.Text = myCSharpObject.Hello();
06 }
07
08 //
呼叫VB类别

09 protected void btnVB_Click(object sender, EventArgs e)
10 {
11
  VBObject myVBObject = new VBObject();
12         txtMsg2.Text = myVBObject.Hello();
13 }
程式说明:

完成后请执行看看,各位可以看到MultiLang.aspx程式的确同时使用了C#VB两种语言,并且可以直接在C#中直接呼叫VB类别产生实体;不过当然以上程式只是示范性质,您可以在类别中建构更为复杂的程式(如ADO.NET或其他)。

注:
(1)
VS.NET 2003若您专案必须使用多个组件,虽说Visual Studio本身不支援,但您可以使用Assembly Linker(AL.exe)手工来达成,并非.NET不能做。
(2)
同时使用C#VB类别程式,并非是指在同一个类别中可以穿插混合使用两种语言,如1,3,5行使用C#2,4,6行使用VB,倘若如此只会造成天下大乱。
(3) VS.NET 2003
不支援多组件多语言,而VS 2005支援,这反映出真实世界中企业或许多专业人士向微软反映需要这个功能,微软才会顺应民意加入这项技术,故大家应平心来看待这项技术,不能因自身反对或没需要,径而推论他人也不需要这项技术,或视之为洪水猛兽。
(4)
在这只是告知各位VS 2005中要如何使用两种语言,至于一个专案是否应该同时使用C#VB两种语言,它有实际面、策略面与意识型态面的议题,故要不要用则是必须贵公司或专案视本身需求去评量决策,祭司不表意见。

此外祭司要提出一个思考点,上面理论的确很精采没错,也确实能够正常执行运作,但是如何证明VS 2005真的会产生多个组件?若不能证明的话就像神学中说有神有存在,信者恒信,不信者恒不信,而比例可能各占一半;然而要证明它有点困难,因为不晓得各位有没有发现在VS 2005建置编译网站后,并不会像VS.NET 2003在专案所在路径下的Bin目录中产生一个dll组件,所以根本没法察看是否有多个组件,那怎办?嗯~还记得前面介绍过aspnet_compiler.exe先行编译这个工具吗?在此利用这个工具编译「VS2005IDE」专案,指令如下:
Aspnet_compiler –v 02VS2005Advance C:/TMP02/VS2005Advance

将编辑过后的专案会输出到C:/TMP02/VS2005Advance,接着到该路径下的Bin目录可以发现确实依目录而产生App_Subcode_cs.dllApp_Subcode_vb.dll两个组件,如此便能够证明祭司所言属实,大家该全部得信了吧!



2-56 先行编译后的多个组件(点图放大)


  即便专案没有同时混用VBC#两种语言的需求,是否这个技巧就没有其他附加价值呢?还是可以利用相同的原理技巧做出多个组件,而不必每次都叫用一个很庞大的dll组件,如此不但系统略为笨重,且又会非常耗用资源,故若专案程式十分庞大者可以利用这个技巧来产生多个组件,有意义的分解成多个较小组件可以求得更佳的系统效能。

节录自【圣殿祭司的ASP.NET 2.0专家技术手册】新书

 

 
请参考MultiLang.aspx程式,以下是步骤说明:
Step 1
:引用Microsoft.VisualBasic命名空间
若果C#专案中有使用到VB.NET的相关功能,请自行加入相关命名空间的参照,以及在VB.NET程式中Import命名空间。

Step 2
:设定Web.configC#VB目录分隔
请在Web.config档中加入下列设定:

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1189291


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_777493.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SEO编辑必看:撰写搜索引擎喜爱的标题

导读:非常有干货,百度站长平台刚发布了这篇篇文章,文章建议:1,标题字数控制在65个字节内,2,重要内容放在标题的最前面,3,添加与网页内容最相关的、用户更常用的、满足用户…

谷歌浏览器无法访问此网站怎么解决_搜狗浏览器看视频没有声音怎么办?教你三招解决此问题的方法...

平时无论是使用电脑进行工作、娱乐或是学习的时候,我们往往需要在电脑的浏览器当中,比如搜狗浏览器,输入我们疑问的问题,然后进行答案的查看。或者是输入我们想要看的影视剧,然后来进行观看。而有的小伙伴在使用搜狗浏…

wordpress怎么搜索别人_北风:史上最全wordpress建站攻略,无代码基础也能轻松搞定...

什么是执行力?就是特么的啥原理都不需要懂,只需要懂怎么做,然后按照步骤一个一个碾压过去,神挡杀神,佛挡杀佛。能做到这一点,就已经能超过很多人了。——北风作为一个零代码基础的小白,建站过程…

几十万的词如何用每页500词分页展示_如何做好SEO的内容更新 提高收录?

已知无用的伪原创手段《SEO实战密码》 中总结了6种内容作弊手段,这些都已经被百度识别了。无论是同义词替换还是简单在原来文章上做更改,都已经没有收录的几率。其中已经没有用的伪原创手段包括如下:1 更改(完全重写)标…

设计企业网站大纲_高端网站设计企业

成都御天程为您详细解读KUywim高端网站设计企业的相关知识与详情,因为互联网的开展趋势,很多企业都从线下中心转移到。很多服务商都搭建了用来推广服务商业务和展现服务商实力,但是很多企业搭建好后却没有重视用户体验,招致网站流…

提示框组件_爱了!这个网页气泡提示组件,让你的网站更炫酷!

网页设计师对 tooltips 鼠标经过提示效果应该不陌生,这种效果虽然可以直接用 css hover 来实现,但是如果想更友好的、更美观的效果,可能就要借助 JS 来实现。今天和大家分享的 Tippy.js 就是很不错的鼠标悬念插件,多种提示信息用法…

查网络计算机的网址,如何查询网站ip地址 怎样查看网站的ip地址方法

如何查询网站ip地址?相信不少电脑小白用户都学习查看网站的ip地址方法,通过CMD命令实现很简单,跟着装机之家学习一下怎样查看网站的ip地址方法吧!网站以装机之家官网为例:www.lotpc.com,我们来看看网站ip地…

实现基于LNMP的电子商务网站--小米商城

一、 环境准备:centos系统、yum源关闭selinux ,关闭防火墙二、 安装步骤:1. yum方式安装包yum install nginx mariadb-server php-mysql php-fpmsystemctl mariadb ss -ntl 查看端 3306 2.下载小米商城源码&#xff…

sumifs两个求和列如何计算_「sumifs」多条件求和函数Sumifs的用法 - seo实验室

sumifs在excle中多条件求和函数sumifs的用法如何使用?下面是小编为大家精心整理的关于多条件求和函数Sumifs的用法,希望能够帮助到你们。多条件求和函数Sumifs1如果我们要求和的条件很多,比如要求大于2018年4月30号(2018/4/30)的乒乓球的数量…

网站服务器是虚拟主机吗,网站服务器就是虚拟主机吗

网站服务器就是虚拟主机吗 内容精选换一换首先需要准备一台Linux系统的物理服务器作为镜像制作服务器(即宿主机),以及一台用于登录宿主机的本地Windows跳板机(物理服务器或虚拟机)。宿主机必须安装:vsftpd服务sshd服务vnc服务virt-manager工具kvm虚拟化软…

java源代码众筹网站_【JavaWeb项目】一个众筹网站的开发(三)第一个网页

一、bootstrap本项目采用bootstrap3使用bootstrap三步:1.导入jQuery2.导入bootstrap自己的css样式3.导入bootstrap自己的js文件bootstrap定义了大量的样式库,要使用样式,只要将元素的class指定为样式库中的值。二、第一个网页index.jsp和css等…

css3 修改checkbox disabled颜色_html5+css3网站建设、让网站布局更加灵活

随着网站建设技术在不断的发展、从以前的table布局再到css布局,为什么css会取代table呢?可能大家心中一直有这个疑问,html的发展大家有目共睹、因为其跨平台性的原因,深受开发人士的欢迎。网站建设好之后,后期能不能利…

能独立服务器的网站,独立服务器的优势有哪些?哪些网站更适合使用独立服务器...

在租用服务器时,我们经常会建议大家去使用独立的服务器。那么,独立服务器和其他的服务器的主要区别在哪呢?独立服务器是一个人独立使用的,市面上的虚拟主机是多人使用。所以,虚拟主机在综合性能上是比不上独立主机的,…

服务器文件扫描,网站目录文件扫描工具dirbuster

网站目录扫描的工具很多,最开始用的wwwscan 、御剑,甚至一些小扫描器自带的比如,椰树、北极熊用来用去,最终你还是会发现,一些个人写的工具真的都是渣渣要么后门,要么崩溃闪退,小白用用还是可以…

前端---网站优化之SEO!!!

网站优化 SEO是由英文Search Engine Optimization缩写而来, 中文意译为“搜索引擎优化”!SEO是指通过对网站进行站内优化、网站结构调整、网站内容建设、网站代码优化等)和站外优化,从而提高网站的关键词排名以及公司产品的曝光度。 简单的说…

python 网络教育-百度传课_哪些在线课程网站比较好,适合网上自学?

现在许多人都喜欢网上自学,比如需要考证的小伙伴,他们一般不会去报补习班,而是找一些免费在线课程网站,在网络上自学。那么哪些在线课程网站比较好?可能对于初次找在线课程网站的小伙伴来说比较迷茫,别担心&#xff0…

制作tomcat证书_网站要上HTTPS加密,申请证书太麻烦?Caddy可以帮你

你现在还在用HTTP吗,太过时了!chrome浏览器已经默认所有HTTP浏览器为不安全网站,如下图所示,头条号页面被标记为不安全:头条号页面被标记为不安全HTTPS的好处不用说,安全,还有逼格!有…

php 框架适合做google seo 吗_权哥《Google站长工具数据指南》新书发布

权哥今天开心地向大家公告:最适合外贸企业的seo工具书发布了,保证轻松易读,小白也能学会。因为权哥当初本来就是写给公司的小白实习生学习seo的。近年来,大量的外贸企业开始关注流量不能仅仅依赖于平台,而应该跳出平台…

seo在线伪原创工具_在线伪原创_搜一搜站长工具

搜一搜站长工具——在线伪原创历时两年研发完善,于2019年7月正式上线,“搜一搜站长工具-伪原创”功能是专门为网站运营人员、和作者生成伪原创内容的便捷工具,后台使用强大的词库、文章素材来源、分词系统,为使用者提供完全免费的…