网站已经做好了,现在我有个疑问
如果网站不发布,带 .cs文件运行
和编译诚dll文件之后,运行性能,和速度有没有影响呢!
一定要编译诚dll吗?

解决方案 »

  1.   

    如果你不编译, .NET Framework 应该会替你编译. 没编译的第一次速度会慢..
      

  2.   

    LZ试过只有页面和CS,不编译可以访问吗?
      

  3.   

    回 kofkyo(一步一步) ( 
    当然可以访问了
    你在用vs开发网站的时候,测试的时候,难道是编译成了dll,不可能的,vs不编译
      

  4.   

    xlfj521(小李飞剑) ( ) 信誉:99  2007-07-25 17:13:42  得分: 0  
    回 kofkyo(一步一步) ( 
    当然可以访问了
    你在用vs开发网站的时候,测试的时候,难道是编译成了dll,不可能的,vs不编译
    ==================================================================================
       楼主,你就饶了我们吧.....................
      
     
      

  5.   

    不编译的话在iis中发布同样能用。不知道楼上几位说不能用的是什么意思
      

  6.   

    如何编译已写好的网站啊?我是从自己的电脑中直接将*.aspx、*.aspx.cs复制到局域网上的服务器上的。
      

  7.   

    没搞懂你的意思,不编译成Dll,你如何使用呢
      

  8.   

    webhermit(杀人眨一眼) (
    回复
    你有什么疑问吗
    你开发vs时,你怎么测试的,切
      

  9.   

    不手动编译,直接发布到IIS肯定可能运行的。只不过,在访问页面时,.net框架会自动在临时文件夹下给你编译一个dll.
      

  10.   

    在用vs时,测试时也生成了DLL的....不过你可以把不编译的文件真接放服务器上
      

  11.   

    xlfj521(小李飞剑) ( ) 信誉:99  2007-07-25 17:47:03  得分: 0  
    webhermit(杀人眨一眼) (
    回复
    你有什么疑问吗
    你开发vs时,你怎么测试的,切
    =============================================================================
    我觉得你既然是问人嘛,别人说不对,总归是有理由的!你开vs的时候只要你F5,系统就会编译cs文件为DLL,然后放在Bin文件夹下。最后你发布网站的时候你直接把cs删除了,有bin下面的DLL(前提保证正确),就能访问的!但是如果你把DLL删除了,肯定不能访问!当是我觉得你似乎自己没测试过还觉得很正确???
      
     
      

  12.   

    而且你可以通过以下情况来证明:
    你可以把带有cs,和Bin(文件夹下有DLL)的发布到网站上,然后随意改动*.cs文件,甚至于删除!你可以发现对系统丝毫没影响,那你就知道是和DLL有关,而和*.cs无关!
      

  13.   

    用VS2005,在测试时不用编译也可以运行,那么我觉得你把整个WEB应用程序的文件夹复制到服务器上照样可以运行,至于性能偶也不知道。
      

  14.   

    不会影响访问速度dll中程序集,是经过编译的微软中间语言,不是机器语言,DLL部署到服务器上的时候是要重新编译一遍成机器语言然后保存在内存里
      

  15.   

    .net 框架会自己帮你编译的。
    如果是2.0的话,你看看C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root
    你运行的网站都在里面留有很多东西。
      

  16.   

    winner2050(代码生成器 mytopwin.com/Soft/SoftShow/26/27.html) ( ) 信誉:100  2007-07-25 22:20:34  得分: 0  
    .net 框架会自己帮你编译的。
    如果是2.0的话,你看看C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root
    你运行的网站都在里面留有很多东西。
    ===================================================================================
    代码生成器,你好,顺便借帖讨论下,研究下!
    ".net 框架会自己帮你编译的"这个是在VS发布网站前还是基于IIS别人访问后?
    个人觉得*.cs在发布网站生成DLL后,就完全与此网站无关了,即使随意修改函数,甚至与删除都不影响网站的运作,那这样的话又何来讨论*.cs是否会影响速度呢?因为aspx已经完全不访问*.cs了!  
     
      

  17.   

    无语。。看来比我还小白的人大把的有啊
    还有楼主的题目中是问不生成DLL对性能有没有影响。明显就是楼主知道不编译也能用。
    怎么这么多人都那么。不说了
      

  18.   

    昨天晚上学习了一下,原来用VS2005中的“发布网站”就可以生成经过编译的DLL,新生成的文件夹中的所有*.aspx.cs文件均没有了,在Bin文件夹下多了很多DLL文件。将该文件夹放到服务器上,虽然没有*.aspx.cs文件,网站照样可以正常运行。至于大家所说的加快了速度,我没有感觉到。只是觉得在服务器上看不到我的源代码,从而保护自己的知识产权……
      

  19.   

    性能的影响不大.一、往往我们的程序,传到网站上以后,iis的环境有了变化,程序也许有些不适应的地方,需要我们调试,二、开发有时也不是一下子全开发完了,如果前面上传.dll文件,对后续的开发,又需要全部重新上传文件这也是我虽知编译与不纺译的区别,有时还是要上传源码,等全稳定了,再删去源码,把编译后的上传上去
      

  20.   

    不编译当然能用啊,性能上也影响不大的,就是如果你是做产品外包的话,就会被人家看到你的原代码了,如果你打包成dll人家就看不到
    而且不编译的话,服务器会在第一次运行的时候编译生成成中间成的,所以第一次会慢一点,只要你服务器不重起,以后访问就快了!
      

  21.   

    我发现一个问题,foshan(佛山黄飞鸿)好像就是楼主!!!!!
      

  22.   

    francis67(ㄒㄒ.Net) ( ) 信誉:100  2007-7-26 6:21:40  得分: 0  
    无语。。看来比我还小白的人大把的有啊
    还有楼主的题目中是问不生成DLL对性能有没有影响。明显就是楼主知道不编译也能用。
    怎么这么多人都那么。不说了
    ==================================================================================
    其实我更觉得无语,楼主所谓的"编译"是指发布网站才叫,而按F5不叫编译,这个是无语之一;
    无语之二,是觉得即使“不编译”去访问,那也和*.cs完全无关,那还讨论什么性能有没有影响,这个太无语了,既然无关了,那还有什么讨论价值??
      
     
      

  23.   

    lz应该是这个意思:直接把.aspx 和.aspx.cs的文件考到服务器上,而不生成dll文件 去访问。应该是可以访问的?至于性能,应该是编译后更快一些……,个人愚见……
      

  24.   

    我真无语了我现在要明白的不是 没有.cs文件 没有dll文件能不能运行的问题网站是我自己的 服务器是我自己的,我要把 网站整个目录传到我的服务器上去,包括.cs文件 ,我不把它编译成.dll也照样可以运行啊我现在要问的是 编译成dll 和 不编译保留 .cs有没有性能影响 
    安全问题,现在不讨论,因为处在测试阶段需要不断改进,所以免不了改动.cs文件。
    服务器是我自己的,我想怎么传就怎么传,
    大家有没有明白啊回;webhermit(杀人眨一眼)
    你说的一堆什么东西啊,完全不是我想要的!!
      

  25.   


      xlfj521(小李飞剑) ( ) 信誉:99  2007-07-26 10:06:06  得分: 0  
     
      我真无语了
    我现在要明白的不是 没有.cs文件 没有dll文件能不能运行的问题
    网站是我自己的 服务器是我自己的,
    我要把 网站整个目录传到我的服务器上去,包括.cs文件 ,我不把它编译成.dll也照样可以运行啊我现在要问的是 编译成dll 和 不编译保留 .cs有没有性能影响 
    安全问题,现在不讨论,因为处在测试阶段需要不断改进,所以免不了改动.cs文件。
    服务器是我自己的,我想怎么传就怎么传,
    大家有没有明白啊
    回;webhermit(杀人眨一眼)
    你说的一堆什么东西啊,完全不是我想要的!!
    ==================================================================================
    我告诉你了这么多就说了2点:
    1.只要是生成DLL就叫做编译.所以按F5和发布网站都是编译;
    2.你要问"编译成dll 和 不编译保留 .cs有没有性能影响",那我不是告诉你了吗?你把"网站整个目录传到我的服务器上去",这个时候*.cs已经完全无效了,也就是说用户访问aspx根本不和*.cs打交道,这个时候你还讨论*.cs的性能问题,有意义吗?
      
       
     
      

  26.   

    回:webhermit(杀人眨一眼)
    源代码传到服务器上去运行,.netframework编译它,这个我知道我现在只是想知道 我直接传编译完成的,和带.cs的程序传上去,让.netframework自己编译,然后运行起来的效果是怎样的
      

  27.   

    xlfj521(小李飞剑) ( ) 信誉:99  2007-07-26 11:03:44  得分: 0  
     回:webhermit(杀人眨一眼)
    源代码传到服务器上去运行,.netframework编译它,这个我知道
    我现在只是想知道 我直接传编译完成的,和带.cs的程序传上去,让.netframework自己编译,然后运行起来的效果是怎样的
    ==================================================================================
    1."直接传编译完成的"
    2.带.cs的程序传上去上面2者一模一样,就好象你在此时在多在网站目录里面新建一些毫无关系的文件,因为毫无关系,所以不影响。*.cs此时就是毫无关系的,所以和性能根本不搭边!
      
     
      

  28.   

    另外还有一个你误解了,那就是你上传一个aspx和cs文件上去,.netframework不会编译,此时访问会出错!之所以你没发布网站就能访问,是因为你在VS里面调试的时候,在Bin下面生成了DLL,此时你直接传到网上去,.netframework是跳过*.cs,去连接DLL编译的!完全不和*.cs打交道!   发布网站,简单而言就是做了帮助你把*.cs删除这件事,其他没有......
      

  29.   

    webhermit(杀人眨一眼) 
    说得对!!!
      

  30.   

    to webhermit(杀人眨一眼)你可以测式一下再说话. 微软的express 是不生成dll的. 把源码传到服务器上去后*.cs也是有用处的.会在第一次执行时iis进行编译,在过程中如果修改了*.cs会重新编译.修改aspx则没有影响.没钱一直用免费的express 用了一年多了.现在把asp.net当 php来写除了第一次执行时慢一些,其它还都好.
      

  31.   

    另外,再补充楼主一点....我觉得性能还是有影响的.不知道是收理作用还是什么的.朋友写的有dll的感觉就是快很多.具体数据没有.全是经验.
      

  32.   

    tony_dagoo() ( ) 信誉:100  2007-7-27 14:34:11  得分: 0  
    to webhermit(杀人眨一眼)
    你可以测式一下再说话. 微软的express 是不生成dll的. 把源码传到服务器上去后*.cs也是有用处的.会在第一次执行时iis进行编译,在过程中如果修改了*.cs会重新编译.修改aspx则没有影响.
    没钱一直用免费的express 用了一年多了.现在把asp.net当 php来写除了第一次执行时慢一些,其它还都好.
    ====================================================================================
        在IIS中执行时候确实要编译,但是不是连接*.cs的,而是连接DLL的。
       “在过程中如果修改了*.cs会重新编译.修改aspx则没有影响.”-----我当然是测试过才敢说话的,无论你怎么修改了*.cs都没影响,相反,你只要修改了aspx就有影响。你试想一下:把aspx里面的内容全清空了或者把aspx都删除了,你看看有没有影响??我觉得你自己还是先测试在说话吧!..............
      
     
      

  33.   

    不过话又说回来,你把“现在把asp.net当 php来写”,我觉得你还是不要来编写asp.net了,.net的精髓都还没....算了不说了...........
      

  34.   

    大哥.
    你把你的aspx第一行发出来
    <%@ Page Language="C#" MasterPageFile="~/portal/MasterPage_VF.master" AutoEventWireup="true" CodeFile="Report.aspx.cs" Inherits="Report" Title="Untitled Page" %>其中有一行CodeFile="Report.aspx.cs"你自己看你的是什么!!发出来看看.你可以试试把cs文件放上去.再改成这样.看看cs是不是有影响.另外.我正版vs用不起.只用免费的express. 当php写只是说感觉像写解释型的语言的方便.没别的意思 .
      

  35.   

    Asp.Net 2.0有三种编译模型:1.Classic Precompilation    Asp.Net 在第一次发布就采用此模型。使用这个编译模型,网站的部分都会预编译(当然会引用任何在后代码页面处理逻辑中引用的程序集),同时其他的譬如基于tag的文件如.aspx、.asmx等在第一次请求时运行时会自动编译。这种模型仅被用作在页面继承已经编译好的带有页面逻辑的基类的经典后代码模型。2.Dynamic compilation应用程序被发布带着所有的标记文件和源文件,同时Asp.Net在空闲时完全的编译应用程序。这种方法的好处是仅仅在标记文件或是源文件改变时,应用程序会自动编译。当然,最大的坏处是动态编译发生在第一次请求,因此当代码发生改变后,第一次请求比以后的请求要花更多的时间(老实说,对于一个大型生产项目我们并不建议在没有在测试环境下测试而直接改变源代码)。这种机制在Asp.Net发布以来就可用了。3.Site PreCompilationAsp.Net介绍一个新的编译模型,这种模型允许把整个站点编译成二进制文件,没有任何代码文件,甚至连标记文件(如.aspx,.asmx等)也全部编译进二进制代码。最后只需要部署二进制代码到目标机器上。当创建一个新的Asp.Net项目时,系统默认会才用动态编译模型,这意味着所有的标记文件和代码文件都被存储在文件系统,Asp.Net会自动编译它们。因此第一次请求将需要多花一点时间,因为需要编译整个页面。如果那样的话,部署已经是编译格式的站点可能更好,因为你能够对整个站点进行预编译。为了站点预编译,你必须使用一个单独的工具AspNet_Compiler.exe来编译你的web应用程序。该命令相应的参数如下:aspnet_compiler -m metabase path
    -v virtual directory path
    -p physical path
    target directory
      

  36.   

    我觉得webhermit(杀人眨一眼) 误解楼主意思了我现在也碰到这个问题,至于bin目录下有没有dll文件能否运行,至少在2.0下是肯定可以运行的
    修改目录下的cs文件对网站也肯定是有影响的。另外对于楼主,我感觉就是第一次访问肯定有性能影响,只要不再改动cs,后面就不会了。