• .Net更改代码生成不生效


    问题:在原.NETFramework项目下,新增一个Controller。本地debug通过后,发布到线上后,发现该controller无效。校对日期,发现文件日期一直还是旧版本。

    解决过程:重新开启本地debug调试,没问题。本地release调试,发现同样问题。

    1.可能是配置项的问题吗?查看svn,对比更改项,发现没有更改;

    2.项目property设置?发现也没有更改;

    3.生成的bin文件问题?删掉项目的bin文件,重新生成,依然无法生成新的dll。

    问题没解决,小小的问题没解决,真是大大的打击,想想要不就把跟项目无关,自动生成的文件夹删掉(主要是bin和obj),重新生成,解决了。

    反过来,我们看对于obj这个文件夹的作用是什么,有个介绍是这么说的:obj是object的缩写,用于存放编译过程中生成的中间临时文件。其中都有debug和release两个子目录,分别对应调试版本和发行版本,在.NET中,编译是分模块进行的,编译整个完成后会合并为一个.DLL或.EXE保存到bin目录下。因为每次编译时默认都是采用增量编译,即只重新编译改变了的模块,obj保存每个模块的编译结果,用来加快编译速度。由此可见,这个问题或许跟obj文件不更新相关,因为之前是已经测试过去掉bin文件生成,然并卵。所以有遇到新增或修改代码无法生成新dll的同学可以尝试下是否可行。

    查看了编译相关知识点,也没具体的一个解释bin和obj是在哪一步产生,哪一步是检测更新的。望知道的同学,告知一声,在此不胜感激。

    人生之旅,无尽。人生之旅,有尽。此生与您相遇便是缘分,请多指教!
  • 相关阅读:
    CF219D
    HDU 4259 Double Dealing 数学题
    HDU1599 find the mincost route 最小环
    HDU3592 World Exhibition 排队判断3种情况
    POJ3694 Network 加边查询剩余桥的个数
    Flex 如何获得Tree 拖动节点的起始位置
    wcf webconfig配置
    学JS面向对象 以及里面的继承
    sqlserver 几种查询耗时
    ubuntu更改文件夹属性
  • 原文地址:https://www.cnblogs.com/aven90/p/10102039.html
Copyright © 2020-2023  润新知