WPF 不包含适合于入口点的静态“Main”方法

来源:互联网 发布:软件测试流生命周期 编辑:程序博客网 时间:2024/05/17 23:07

手动创建App.xaml作为启动项目时,编译时提示错误:

1>------ 已启动生成:  项目: WpfApplication11, 配置: Debug Any CPU ------1>CSC : error CS5001: 程序“e:\RefCode\C#\.....\obj\Debug\WpfApplication11.exe”不包含适合于入口点的静态“Main”方法========== 生成:  成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

    看到这个问题后的第一想法就是App.xaml.cs文件里面要写Main方法吗?貌似以前的WPF项目的App.xaml.cs文件里面没有Main方法啊。于是重新新建一个WPF项目,将App.xaml和App.xaml.cs文件与现有项目自己添加的对比了一下,基本关键元素都有。没办法只能去看项目配置中哪地方可以配置启动关联。


    查看了项目属性对话框中的所有标签页,貌似只有“应用程序”标签中的“启动对象”可能跟程序的启动用点关系。启动对象默认是“未设置”的。点了一下下拉框,没有发现任何下拉项。而打开前面新建的WPF项目确可以下拉看到App文件。因此猜测VS在项目文件内部对App文件作了特殊的处理。



对比一下项目配置文件:

直接新建的WPF项目:

<ApplicationDefinition Include="App.xaml">   <Generator>MSBuild:Compile</Generator>   <SubType>Designer</SubType></ApplicationDefinition>

自己添加的类库转WPF项目:

<Page Include="App.xaml">   <Generator>MSBuild:Compile</Generator>   <SubType>Designer</SubType></Page>

    在直接新建的WPF项目里面,App.xaml在项目文件里面用ApplicationDefinition标签定义。而在后面的类库转WPF项目中,App.xaml在项目文件里面用Page标签定义,表示只是一个页面而已。因此,只需要在类库转WPF项目的项目文件中将App.xaml的配置改成ApplicationDefinition即可发现问题解决。

0 0
原创粉丝点击