c# - 如何修复 int 不包含 int.TryParse() 的定义?

标签 c# winforms visual-studio-2008 compact-framework

在我的新 CF winform 中,我突然无法编写 int.TryParse() 代码,VS 显示消息 'int' does not contain a definition for 'TryParse',但在另一种形式下,这没问题。太奇怪了!

我通过 Go To Definition 追踪到这一点,旧形式使用 C:\DOCUME~1\XPMUser\LOCALS~1\Temp\3464$CommonLanguageRuntimeLibrary$v2 中的 int .0.50727\System.Int32.cs 当然有 TryParse(),而我的新代码使用 C:\DOCUME~1 中的 int\XPMUser\LOCALS~1\Temp\3464$mscorlib.dll$v2.0.50727\System.Int32.cs,其中没有 TryParse()

在项目的引用列表中,有一个mscorlib,双击我到达对象浏览器的mscorlib [Compact Framework],同时对象浏览器还显示条目 mscorlib,即没有 CF 注释。

这对我帮助不大,希望有人能帮我找回 TryParse()。

这是错误的示例代码:

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;

namespace SIClient2.WebServices
{
    class Test
    {
        public Test()
        {
            int i;
            int.TryParse("123", out i); // <== 'int' does not contain a definition for 'TryParse'
        }
    }
}

没有错误的代码是winform的一部分。这有区别吗?

最佳答案

事实证明,这是你在周五下午不应该做的事情之一。该解决方案有几个项目:移动设备上的客户端,因此是 CF。 Web 服务的服务器。还有一个直接调用 Web 服务以便于调试的测试项目,使用桌面 winforms,即没有 CF,并使用 int.TryParse() ... :-) 我们也在努力升级到更现代的移动设备,希望这会避免 CF。

底线是 VS 并没有那么糟糕,但也不是很容易。大多数错误都是指向实际问题的有效指针。另一方面遗憾的是,CF的局限性很大,而今天的移动设备已经不再那么娇小了。

关于c# - 如何修复 int 不包含 int.TryParse() 的定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22563766/

相关文章:

c# - 升级到.net 6.0后是否可以删除startup.cs文件以保留在Program.cs中?

c# - 如何在 LINQ 中动态添加字典对象?

C# Winforms 时间轴控件(来自 WTL?)

c# - Splitcontainer 中面板的最大高度

c# - 我如何使用 2 个 sql 命令和 1 个阅读器?

c++ - 在 Visual Studio 2008 中输入俄语字母时出错抛出控制台

c# - ASP.Net Entity Framework 和外键

c# - 如何为任何 exe 创建安装程序?

c++ - Visual Studio 中的 "Create Precompiled Header"(/Yc) 和 "Use Precompiled Header"(/Yu) 有什么区别?

vb.net - 最佳实践 : Option Infer