近日,在编译C#项目时经常发现有些时候明明代码没错,但就是编译不过,只有选择重新编译或者清理再编译才会不出错,本着求学的态度,搜罗了下VS2008IDE中生成操作的种类以及差别,整理如下:
 
内容(Content) - 不编译该文件,但将其包含在“内容”(Content) 输出组中
编译(Compile) - 将该文件编译到生成输出中此设置用于代码文件,说白了就是CS文件,需要编译过程。

嵌入资源(Embedded Resource) - 将该文件作为 DLL 或可执行文件嵌入主项目生成输出中
内容的读写和运行目录下的其他文件没有区分。
编译和嵌入资源读写,需要用到,例如:
GetType().Assembly.GetManifestResourceStream(assembleName + ".AppDesc.xml");

生成操作(BuildAction) 属性:BuildAction 属性指示 Visual Studio .NET 在执行生成时对文件执行的操作BuildAction 可以具有以下几个值之一: 
无(None) - 不在项目输出组中包含该文件,并且在生成进程中不会对其进行编译例如包含文档的文本文件,如自述文件 
编译(Compile) - 将该文件编译到生成输出中。此设置用于代码文件。 
内容(Content) - 不编译该文件,但将其包含在“内容”(Content) 输出组中例如,此设置是 .htm 或其他类型 Web 文件的默认值。 
嵌入资源(Embedded Resource) - 将该文件作为 DLL 或可执行文件嵌入主项目生成输出中此设置通常用于资源文件。
生成操作的默认值取决于添加到解决方案中的文件的扩展名。例如,如果将 Visual C# 项目添加到解决方案资源管理器中,则安装操作的默认值是”编译”,因为扩展名 .CS 指示可编译的代码文件。文件名和扩展名出现在解决方案资源管理器中。

VS 2008 生成操作中各个选项的差别的更多相关文章

  1. vs文件属性(生成操作)各选项功能(发布Web项目时使用)

    转自:http://www.cnblogs.com/paulhe/p/4490583.html 右击项目里的文件,选择属性(F4)会有[生成操作]的选项. 它提供了14项选择,如图: 在这说一下常用的 ...

  2. vs文件属性(生成操作)各选项功能

    右击项目里的文件,选择属性(F4)会有[生成操作]的选项. 它提供了14项选择,如图: 在这说一下常用的选项: 1.编译 编译用于c#代码类的操作,编译之后输出在该程序集的bin目录下.换句话说,代码 ...

  3. 脚本:SQLServer 2008 生成某数据库中的所有索引创建脚本

    --1. get all indexes from current db, place in temp table select schemaName = s.name, tablename = ob ...

  4. Windows Server 2008 R2远程协助选项 灰色

    管理工具——〉服务器管理器——〉功能——〉添加功能   窗口中"远程服务器管理工具"下边的"远程协助"打上对钩"再点击"下一步"再 ...

  5. Windows Server 2008 R2远程协助选项灰色

    管理工具——〉服务器管理器——〉功能——〉添加功能     窗口中"远程服务器管理工具"下边的"远程协助"打上对钩"再点击"下一步" ...

  6. SQL Server 重新组织生成索引

    标签:SQL SERVER/MSSQL SERVER/数据库/DBA/索引/统计信息 概述 无论何时对基础数据执行插入.更新或删除操作,SQL Server 数据库引擎都会自动维护索引.随着时间的推移 ...

  7. 深入linux kernel内核配置选项

    ============================================================================== 深入linux kernel内核配置选项 ...

  8. SQL SERVER 2008向ORACLE 11G迁移示例

    来源于:http://www.cnblogs.com/hiizsk/ 由SQL SERVER 2008向ORACLE 11G迁移过程记录之一-表 使用Oracle Sql Developer将SQL ...

  9. 在Linux下如何使用GCC编译程序、简单生成 静态库及动态库

      最近在编写的一个Apache  kafka 的C/C++客户端,,在看他写的 example中,他的编译是用librdkafka++.a和librdkafka.a    静态库编译的,,,而我们这 ...

随机推荐

  1. nio加强服务端并发

    究了一下Android推送,方式很多,比如用框架或者用第三方服务,在此并不讨论个中优劣.抱着学习的态度,本人不太喜欢用一些现成的东西,所以自己动手实现了一套简单的推送机制.使用TCP长连接,完成服务器 ...

  2. 解决chrome和IE样式兼容问题

    在页面title中加入: <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible"> ...

  3. iOS遍历相册中的图片

    //获取相册的所有图片 - (void)reloadImagesFromLibrary { self.images = [[NSMutableArray alloc] init]; dispatch_ ...

  4. iOS emoji表情转码 或者判断

    如果项目中有评论或者信息恢复的地方,往往会用到emoji,有时候如后台不支持emoji,就会显示乱码错误,我们可以把emoji转成unicode编码或者utf8编码格式传给服务器.当然如果后台服务器接 ...

  5. js之数据类型

    1.数组类型 var Array=new Array(); 长度可变 var Array=new Array(n); 长度为n的数组 var Array=new Array("A" ...

  6. vagrant 基本配置

    首先安装好virtualbox,可以对照官网教程 https://www.if-not-true-then-false.com/2010/install-virtualbox-with-yum-on- ...

  7. PHP二维数组排序

    $arrays   要排序的数组 $sort_key 根据排序的key $sort_order 升序降序    SORT_ASC/SORT_DESC $sort_type 排序key类型 SORT_N ...

  8. ArcGIS API ArcGISDynamicMapServiceLayer.setVisibleLayers对带有GroupLayer图层组的数据无效(针对LayerInfo)问题探讨

    首先看下setVisibleLayers方法: setVisibleLayers(ids, doNotRefresh?) Sets the visible layers of the exported ...

  9. Kickstart/Anaconda实现自动化安装原理探究

    原网页地址:http://molinux.blog.51cto.com/2536040/548247#55918... 内容概要:  1.  系统安装基本流程图示2.  Anaconda简介3.  K ...

  10. GetRelevantAnimTimeRemainingFraction节点Bug

    初始设置: 动画状态机: MoveStop->Idle的条件: 使用该节点的目的: 在动画蓝图的过渡条件中使用该节点,保证上一个状态的动作完成后进入下一个动作.需求是MoveStop动作完成后才 ...