繁体   English   中英

如何在C#上下文中引用包含单引号的F#名称?

[英]How can I refer to F# names containing a single quote in a C# context?

这主要是在尝试调试Visual Studio调试器中的F#代码时出现的,它需要C#语法:

调试器无法识别F#表达式。 要在F#调试期间在调试器窗口或对话框中输入表达式,必须将表达式转换为C#语法。 将F#表达式转换为C#时,请确保记住C#使用==作为比较运算符的相等性,并且F#使用单个=。

(来自http://msdn.microsoft.com/en-us/library/vstudio/ee843932.aspx

问题是我有包含单引号字符的变量和函数,比如path' ,但单引号似乎在C#中的名称中无效,因此在调试器窗口中输入path'只是说Newline expected in constant或单词为效果,因为它认为我正在开始一个字符文字。 即使右键单击它并通过上下文菜单添加手表也会产生类似的错误。

如何将包含单引号的F#名称转换为C#语法,以便我可以从调试器中检查它们或从C#代码中引用它们?

我认为没有办法做到这一点 - 所以最好的选择可能是将变量path'重命名为一个有效的C#标识符,如pathAux

虽然F#在命名方面更灵活(并允许像path'这样的东西甚至``whatever !`` ),但是大多数时候使用C#兼容的标识符名称可能是个好主意,因为它会使代码可读更广泛的受众 - 例如C#开发人员。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM