gpt4 book ai didi

c# - Visual Studio 2010 项目到 Visual Studio 2012

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:51:46 24 4
gpt4 key购买 nike

我的 friend 刚刚向我发送了一个 VS2010 项目,其中包含 2 个解决方案:一个包含一个 CPP 文件,另一个包含 C# WPF 项目(一个 XAML 和一个 CS)。使用 VS2010 在他的计算机上一切正常。当他构建并执行项目时,主 XAML 窗口会按预期显示。

当我尝试在我的计算机上使用 VS2012 执行相同操作时,我在构建项目时没有遇到任何问题。但是,当我运行它时,什么也没有发生。我在 C# 代码中添加了一些断点,我意识到代码可以运行,但窗口从未出现。因此,一旦执行了代码,应用程序就会退出,而不是在 XAML 界面中等待用户输入。

我以前从未遇到过这个问题,通常从 VS2010 到 VS2012 工作得很好。在这里,一切似乎都正常...除了 XAML 窗口现在在运行项目时显示,这非常烦人。

有人知道那里发生了什么吗?我可能在这里遗漏了一些真正基础的东西,但我没有在解决方案或项目的属性中看到任何实际可以帮助我确保 XAML 窗口在我启动项目时运行的设置。

最佳答案

需要注意的一件事是 4.5 编译器已经更改了 foreach 循环中 lambda 的语义,因此您的应用程序可能已经被这个绊倒了。看这里:https://connect.microsoft.com/VisualStudio/feedback/details/732657/c-5-compiler-doesnt-respect-the-semantics-of-the-foreach-range-variable-when-langversion-5

基本上如果你有这样的东西:

List<Action<int>> actions = new List<Action<int>>();
foreach (var x in new[] { 10, 20, 30 })
{
actions.Add(() => Console.WriteLine("x = {0}", x);
}

actions.ForEach(a => a());

会给出不同的结果,具体取决于它是用 4.0 还是 4.5 编译的。我们有点被这个绊倒了,因为我们的构建机器仍然是 4.0,我们将开发机器升级到 VS 2012。

关于c# - Visual Studio 2010 项目到 Visual Studio 2012,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13003603/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com