我用vs2008+Sql2005做好了三层架构的网站,在vs2008里面调试可以,可怎么发布啊!怎么只能发布web层,另外三层不能发布啊!光发布web层,网页打开就出错!望高手明确指点,多谢! 

解决方案 »

  1.   

    如果你添加了引用的话,那么其他2层的DLL会在BIN里面出现,你可以看一下有没有其他2层的DLL,然后把你报错的内容发上来看看
      

  2.   

    在WEB中添加引用
    右键发布网站,或使用WebDeployment Project
    上传发布的文件
      

  3.   

    您好!非常感谢您的回复!我添加了引用,BIN里面有所有层的DLL,问题是我只能在web层才能有"发布网站"的选项,点发布后,只能看到web层的内容,看不其他层!其他层需要发布不?
      

  4.   

    仔细查看你的程序目录,在 Bin 文件中会看到一个动态链接库文件,这是你的网站逻辑文件,如果你还有自定义数据文件(cs 类型的业务逻辑文件),也会被自动打包到上述文件中,除了这个,你的 WEB 页文件 (aspx 文件)在发布目录中能够看到。你说的三层架构中除了界面之外的东西都被上述 dll 文件封装了,所以你看不到,但这并不影响你的程序运行。
      

  5.   

    按你说的这样我发布网站,我在iis中浏览时出现:未将对象引用设置到对象的实例。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误: 
    行 64:             }
    行 65:             Config config = new Config();
    行 66:             while (rec.Read())
    行 67:             {
    行 68:                 config.Title = rec["Title"].ToString();
     源文件: D:\Tengjie\DAL\ConfigSQL.cs    行: 66 既然封装了,怎么还去运行我做的运行文件啊!