vs 编译错误 The name 'InitializeComponent' does not exist in the current context in WPF application
1:文件命名空间的问题
xaml文件和model.cs文件的命名空间
2:csproj
那么它究竟是给谁用的呢?那是给开发工具用的,例如我们在熟悉不过的Visual Studio,以及大家可以没有接触过,但是应该都听说过的MSBuild.exe。Visual Studio会根据csproj里的XML定义来管理项目文件以及相关其他一些种类非常丰富的数据及操作,MSBuild也会根据csproj文件来得知编译这个项目需要有哪些依赖,默认输出路径,Pre-Build和Post-Build需要哪些操作等等。Visual Studio和MSBuild都是开发工具,这就是csproj存在的唯一意义:为“开发环境”提供信息。而到了运行环境中,根本不会有人(操作系统?)关心所谓的csproj文件——也就是“程序是哪里来的”。
如果是个可执行程序,操作系统需要的只是exe,dll,甚至是配置文件或资源文件,而并非在开发中举足轻重的csproj,sln,dbproj等文件。而像IIS这样的运行环境,更加不会去关注csproj的影子:“csproj是什么?”IIS轻蔑地说,“我只听web.config的说法”。在运行环境中,csproj的辉煌不在——这是自然,你有办法向我们的IIS证明它使用的dll在开发期是由csproj,sln等文件来“统领”的吗?现在说到之前提到的“pdb文件需要放在Debug目录下才有效果”,其实不然。Debug目录只是VS的模板所“默认存在”的编译规则所生成的目录而已,我们在调试时使用pdb文件完全可以由VS指定pdb文件存在的目录——甚至我们根本不需要VS也能使用pdb文件。
说到了“模板”,这其实又是“开发环境”的概念。我们在VS中选择New Item或New Project时,可以在谈出窗口的左边找到模板的分类,而又边则是一堆可用的模板。这些模板是哪来的呢?自然是人为生成给VS用的,您不妨看看自己My Documents\Visual Studio 2008\Templates目录下是否存在一些zip文件,那就是存放“My Templates”的压缩包,感兴趣的朋友可以学习一下如何建立一个模板。而在“运行和Web Sit环境”下,更不会知道开发中用了什么模板。不知您是否提过这样的问题:“为什么Web Site中无法使用ASP.NET AJAX,而Web Application就可以?”现在您应该已经知道了,运行时期的问题e、Web Application与否没有任何关系。那么是如何产生这个问题的呢?看看您的Web.config?看看页面上提示了什么信息?用Fiddler看看请求的输出是什么?其实在很多时候“排错”并没有什么妙法,唯“仔细”二字。
而且事实上,“模板”在开发环境中的“地位”比csproj文件都要低,因为只要通过模板创建好内容之后,就无法说明结果和自己有什么联系了。例如我们使用模板创建一个AjaxControlToolkit的Extender,其中会生成一个.cs,一个.designer.cs和一个js文件——呵呵,谁还能证明这三个文件不是我们手动创建的呢?这就是“开发环境”,一切都是为了开发效率的提高,一切都是为了能够最终产生一个可执行的二进制文件。而在开发环境的最后一个成员“编译器”工作完成之后,所有开发工具便默默地退居二线。
vs 编译错误 The name 'InitializeComponent' does not exist in the current context in WPF application的更多相关文章
- stm32的hall库新建模板编译错误: #error "Please select first the target STM32F1xx device used in your application (in stm32f1xx.h file)"的处理
在stm32f1xx.h file文件中找到如下代码: /* Uncomment the line below according to the target STM32L device used i ...
- 【转】关于编写WPF UserControl时提示The name 'InitializeComponent' does not exist in the current contextr的解决!
1.打开.csproj(工程)文件. 2.找到<Import Project="$(MSBuildBinPath)/Microsoft.CSharp.targets" /&g ...
- [原]Unity3d中奇怪的编译错误
整理项目,重新build时出现一些问题,这些代码在原项目中都是可以运行的. 错误信息如下: Assets/XXXXX.cs(79,35): error CS0103: The name `NNNNNN ...
- xamarin.forms新建项目android编译错误
vs2015 update3 新建的xamarin.forms项目中的android项目编译错误.提示缺少android_m2repository_r22.zip,96659D653BDE0FAEDB ...
- 《转载》使用org.w3c.dom.Element的setTextContent()、getTextContent()方法时出现编译错误
今天在更新项目后进行编译时,出现如下错误一堆: 编译错误 Google之,在stackoverflow上看到如下的解决方法: I came here with the same problem. Ev ...
- asp.net教程:编译错误同时存在于不同dll中
asp.net 编译错误类型“同时存在于”不同的dll中. 出现这种错误大概有三种情况: 1.ASPX页面,一个*.ASPX,对应着一个*.cs文件,两者其实是一个文件,通过两者实现代码分离,每个*. ...
- VS2010出现FileTracker : error FTK1011编译错误的解决办法
VS2010出现FileTracker : error FTK1011不知道是不是vs2010的一个bug,反正有人提交了. FileTracker : error FTK1011编译错误的解决办法有 ...
- PowerDesginer 生成的Oracle 11g 组合触发器代码编译错误(29): PLS-00103
问题描述: 采用PowerDesigner15针对Oracle 11g 创建物理数据模型,想实现一个字段的自增,采用如下步骤: 1.创建序列,命名为Sequence_1; 2.在自增字段编辑窗口中,选 ...
- 我看见的第一个XCODE编译错误 - Command /applications.../clang failed with exit code 1
开始用XCODE学习Apple相关开发的东东,写些demo熟悉Object C,一直还没看见什么问题,昨晚在家把一些demo上传到代码服务器,今天在另外一台机器上下载下来编译,出现了问题: Preco ...
随机推荐
- oracle中xhost报错
一.命令找不到 xhost:command not found yum whatprovides "*/xhost" Loaded plugins: product-id, sec ...
- 【bzoj3207】花神的嘲讽计划Ⅰ Hash+STL-map+莫队算法
题目描述 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的![hqz:大笨J]” “这道题又被J屎过了!!” “J这程序怎么跑这么快!J要逆袭了!” …… 描述 这一天DJ在给吾等众蒟 ...
- 【bzoj2819】Nim DFS序+树状数组+倍增LCA
题目描述 著名游戏设计师vfleaking,最近迷上了Nim.普通的Nim游戏为:两个人进行游戏,N堆石子,每回合可以取其中某一堆的任意多个,可以取完,但不可以不取.谁不能取谁输.这个游戏是有必胜策略 ...
- 批处理命令之Start的详细用法
Start启动单独的“命令提示符”窗口来运行指定程序或命令.如果在没有参数的情况下使用,start 将打开第二个命令提示符窗口. 语法start ["title"] [/dPath ...
- 从网上搜集的X86 显示 int 10H
INT 10H 是由 BIOS 对屏幕及显示器所提供的服务程序,而后倚天公司针对倚天中文提供了许多服务程序,这些服务程序也加挂在 INT 10H 内.使用 INT 10H 中断服务程序时,先指定 AH ...
- Struts+ibatis-学习总结一
1查询并返回list 别名映射->实体类:resultClass <select id=" selectAll" resultClass="AppLog&qu ...
- HRBUST 2078:糖果(模拟,贪心)
题不难,但作为一道恶心到了我的题,我还是记录一下的好. 题意:n个人围一圈,要求:相邻两人,分数高的要比分数低的得到更多的糖果,若分数相同则必须得到相同数量的糖果.问满足要求的最少需要分配的糖果数.( ...
- AC日记——圆桌聚餐 cogs 729
729. [网络流24题] 圆桌聚餐 ★★ 输入文件:roundtable.in 输出文件:roundtable.out 评测插件时间限制:1 s 内存限制:128 MB «问题描述: ...
- js 时间戳与yyyy-mm-dd或yyyy-MM-dd HH-mm-ss互相转换
首先是获取当前系统时间转换为时间戳 var timestamp = Date.parse(new Date());//获取当前时间 timestamp = timestamp / 1000; 然后是时 ...
- HDU 5212 Code【莫比乌斯反演】
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5212 题意: 给定序列,1≤i,j≤n,求gcd(a[i],a[j])∗(gcd(a[i],a[j] ...