分类

转换翻译

Instant C#(vb.net转c#工具)

Instant C#(vb.net转c#工具) 190611 官方版

大小:404 KB

语言:英文系统:WinXP, Win7, Win8, Win10, WinAll

类别:转换翻译时间:2019-07-11

  Instant C#(是一款功能丰富的编程语言转换软件,可以帮助用户在软件将vb.net转换为c#语言,您可以将自己编辑的文件加载到软件直接转换,在分析文件的时候Instant C#会提示您输入无法找到的程序集dll的位置 - 这有助于识别对这些程序集的某些引用的最佳转换。此外,如果无法解析程序集中的类型或成员,Instant C#将显示消息框,默认情况下,Instant C#通过调用内部.NET方法转换许多Microsoft.VisualBasic命名空间成员。这包括许多字符串和日期函数,它们在.NET Framework中几乎具有一对一的等价物。其他没有一对一等效的成员将被保留为对Microsoft.VisualBasic命名空间的调用!

Instant C#(vb.net转c#工具) 190611 官方版

软件功能

  项目和文件夹转换

  “项目和文件夹转换器”选项卡允许您转换项目,解决方案或文件夹中的所有VB代码。转换完成后,您可以启动新项目或解决方案,查看Instant C#注释,将转换后的代码文件与原始代码文件进行比较,以及查看新项目或解决方案文件夹。

  文件夹转换选项允许您转换文件夹层次结构中的所有VB代码。

  转换历史列表视图显示以前转换的项目,并允许您启动项目,查看剩余的即时C#注释,以及查看项目文件夹。

  文件和代码段转换

  File&Snippet Converter选项卡允许您转换VB代码片段或文件。在左侧文本框中,您可以键入或粘贴代码段,插入文件或查看Instant C#示例代码段。转换文件或代码段后,您可以选择并复制结果,将结果保存到文件或搜索结果。

  命令行转换

  Instant C#可以从命令行启动,带有一个或两个参数以及一个可选的最后一个参数,指示设置.dat文件的位置。如果只指定了一个参数,则会将其解释为其中一个自定义项目转换组的名称。如果指定了两个参数,则第一个参数是要转换的VB项目文件,解决方案文件,文件夹或文件,第二个参数是转换后的C#项目将写入的文件夹或文件。如果包含指示设置.dat文件位置的可选最后一个参数,则在转换开始之前导入该选项/设置文件。

软件特色

  将VB类型'Imports'转换为'using static':默认情况下,Instant C#使用static(C#2015或更高版本)将VB类型Imports转换为C#。如果未选择此选项,转换器将忽略Imports语句并在适当的位置插入类型名称。

  转换VB“当”抓过滤器,以C#异常过滤器: 默认情况下,即时C#转换VB 当捕获过滤器,以C#异常过滤器(C#2015或更高版本)。如果不选择此选项,转换器将注释掉原始捕获过滤器。

  使用C#只读自动属性和自动属性分配: 默认情况下,Instant C#将VB只读自动属性转换为C#只读自动属性(C#2015或更高版本)。如果不选择此选项,转换器将转换为具有专用支持字段的常规属性。

  抑制大小写调整:尽管VB不区分大小写,但较新版本的Visual Studio可以很好地自动调整成员名称的大小写。如果您不希望使用Instant C#执行大小写调整启发式检查,请检查此首选项。

  尽可能使用后缀运算符: 您可以选择将单位递增/递减语句(例如i = i + 1或i + = 1)转换为非常简洁的C#postfix形式i ++。

  为'For'循环结束条件插入不是常数的临时变量: VB只计算一次For循环的结束条件,而C#在每次迭代时计算它。如果Instant C#确定结束条件可能会发生变化,那么它会将一个临时变量设置为原始结束条件,并在C#for循环中使用该临时变量。

  始终转换为显式接口实现: C#有两种用于实现接口方法的样式:隐式(方法由名称和参数匹配)或显式(方法名称由接口名称限定)。Instant C#默认使用隐式方法用于公共方法,因为它更好地维护原始VB意图(对于非公共方法,显式接口实现总是用于重现相同的行为)。

  禁止插入类型转换或转换: 默认情况下,Instant C#将插入类型转换或转换以复制VB隐式转换的行为。如果要避免转换器插入任何类型转换或转换,请选择此选项。

  将带有转义字符的字符串转换为逐字字符串: 默认情况下,Instant C#对包含双引号或反斜杠字符的字符串使用转义字符,但此选项会将这些字符更改为逐字字符串。(VB 2015多行字符串始终转换为C#逐字字符串)。

  如果未找到“Option Strict”语句,则假设“选项严格打开”用于片段: 默认情况下,如果未找到“Option Strict”语句,则转换器会假定“选项严格关闭”以进行代码段转换。

  如果未找到“选项推断”声明 ,则假设“选项推断”为片段:默认情况下,如果未找到“选项推断”声明,转换器会假定“选项推断”用于片段转换。

  可空类型语法:要指定可空类型,可以使用较短的语法使用?可空标记或明确表示类型的较长语法,例如Nullable 。Instant C#默认转换为较短的语法。

  使用辅助类方法转换VB数值转换: 默认情况下,Instant C#将VB数字转换(如CInt)转换为System.Convert方法调用。如果要复制VB数字强制转换的确切行为(接受千位分隔符,括号,货币符号和尾随符号字符),请选择此选项。此选项不适用于从整数类型到数值类型的转换或从浮点类型转换为数字类型的转换 - 对于这些情况,常规C#转换或对System.Convert方法的调用将始终足够。

  使用VB字符串比较的严格转换: 默认情况下,Instant C#会将字符串比较转换为语法上非常相似的C#比较('='到'=='和'<>'到'!=')。但是,如果要复制VB字符串比较的确切行为(将空字符串解释为空字符串),请选择此选项。

  使用VB字符串函数调用的严格转换: 默认情况下,Instant C#将VB字符串函数调用转换为最自然的C#等效(例如,Left(x,y)到x.Substring(0,y))。但是,如果要复制VB字符串函数的确切行为(将空字符串解释为空字符串并接受可能不在字符串范围内的函数调用参数),请选择此选项。这将导致Helper方法用于Left,Right,Mid和Replace,并且null合并将用于许多其他调用。

  将'Handles'转换为严格的C#等价物: 在VB中,方法的Handles子句使该方法自动连接到Handles子句中的WithEvents字段的事件。如果在InitializeComponent方法中初始化WithEvents字段或者事件属于当前类,则Instant C#默认将这些转换为简单事件连接。对于其他情况,Instant C#将相关的WithEvents字段转换为在设置WithEvents变量时执行事件连接的属性。您可以选择应用严格的WithEvents转换在InitializeComponent方法中初始化的字段,但这意味着事件不会显示在设计器视图中。您还可以选择包含设计器文件WithEvents字段 - 默认情况下会排除这些字段,因为许多设计器工具无法处理对设计器文件所做的更改或可能会丢失更改。如果未选择严格转换选项,则不在InitializeComponent中的所有事件连接都在构造函数中设置。

使用说明

  1、打开软件就自动显示编码类型,可以默认UTF-8-Codepage 65001转换,也可以自己设置

Instant C#(vb.net转c#工具) 190611 官方版

  2、点击Other codepage就可以立即设置新的编码内容

Instant C#(vb.net转c#工具) 190611 官方版

  3、这里显示几十种编码,您可以选择 IBM EBCDIC(UK)-Codepage 20285, 根据自己需要的内容选择

Instant C#(vb.net转c#工具) 190611 官方版

  4、新行选项,在主要条件下中断控制结构:如果选择此选项,转换器将按主要条件拆分控制结构语句(if和while语句)。

Instant C#(vb.net转c#工具) 190611 官方版

  5、参数/参数的中断方法:如果选择此选项,转换器将通过方法参数和方法调用的方法调用来拆分方法声明。

Instant C#(vb.net转c#工具) 190611 官方版

  6、在新行上启动LINQ查询:选择此选项会使Instant C#格式化LINQ查询,以便从新行开始显示。

Instant C#(vb.net转c#工具) 190611 官方版

  7、打破关键字的LINQ查询:选择此选项会使Instant C#格式化LINQ查询,以便关键字where,from,select,group,join和orderby开始新行。

Instant C#(vb.net转c#工具) 190611 官方版

  8、转换消息选项

  在此选项对话框中,您可以自定义转换器用于消息的注释前缀,还可以切换Instant C#显示或关闭的消息。

  您可以通过“全部显示”和“显示无”按钮轻松设置全部或全部显示。

Instant C#(vb.net转c#工具) 190611 官方版

  9、自定义字符串替换

  Instant C#允许您在转换后的C#代码中指定自己的自定义替换。这对于根据C#中可能与VB中不同的样式首选项自定义代码非常有用。对于没有.NET等价物的VisualBasic命名空间方法将被您自己的自定义方法替换以从转换后的代码调用的情况,它也很有用。

Instant C#(vb.net转c#工具) 190611 官方版

  10、诊断选项

  如果转换时间超过预期,这些选项旨在向有形软件解决方案提供信息。 “按文件记录处理”指示转换器记录处理的文件和每个进程所用的时间。 '记录在取消转换之前解析的最后100行代码'指示转换器记录在取消转换之前解析的最新行。

Instant C#(vb.net转c#工具) 190611 官方版

  11、项目转换选项

  绕过程序集解析对话框:默认情况下,Instant C#会提示您输入无法找到的程序集dll的位置 - 这有助于识别对这些程序集的某些引用的最佳转换。此外,如果无法解析程序集中的类型或成员,Instant C#将显示消息框。如果您不想看到这些对话框,请选择此选项。

Instant C#(vb.net转c#工具) 190611 官方版

  12、包含对Microsoft.VisualBasic程序集的引用:默认情况下,Instant C#包含对转换后的C#项目中的Microsoft.VisualBasic程序集的引用,以处理没有其他.NET等效项的项。如果您不想要对此程序集的引用,请取消选中此选项。

Instant C#(vb.net转c#工具) 190611 官方版

  13、包含MyComputer.cs帮助程序文件:默认情况下,Instant C#包含一个名为MyComputer.cs的帮助程序文件,用于处理对My.Computer的一些调用。如果您从不想要包含此帮助程序类,请取消选中此选项。

Instant C#(vb.net转c#工具) 190611 官方版

  14、在与VB项目级别“Imports”对应的每个文件中包含“using”语句:默认情况下,Instant C#包括与项目文件中指定的VB Imports对应的using语句。

Instant C#(vb.net转c#工具) 190611 官方版

  15、已转换的C#项目的警告级别:C#项目的警告级别介于0和4之间.Instant C#会将已转换项目的警告级别设置为此值。

Instant C#(vb.net转c#工具) 190611 官方版

  16、为转换的链接文件夹重命名后缀:如果项目包含“链接”文件,则链接文件的转换文件夹将复制到相同的相对位置,并通过添加后缀重命名。后缀是避免修改原始链接文件夹内容所必需的(当源项目文件夹和目标项目文件夹位于相同的文件夹深度时,这是可能的)。

Instant C#(vb.net转c#工具) 190611 官方版

  17、增强选项

  这些选项与纠正或简化原始代码中存在的问题的更改有关,但从转换或格式化角度来看不是必需的。大多数这些问题更可能出现在从旧版本的Visual Basic迁移的代码中。

  将VB和/或转换为C#&& / ||当操作数是布尔值时:AndAlso和OrElse总是转换为C#&&和||运算符,VB的And和Or运算符的严格等价物是C#按位&和|运算符,它们也被重载以充当非短路逻辑运算符。但是,当确认操作数是布尔值时,Instant C#将这些转​​换为短路&&和||运营商。一个未转换为短路运算符的情况是表达式的右侧是函数调用 - 这样做是为了保留函数调用的副作用。如果您希望始终将VB的非短路运算符转换为C#中的非短路运算符,则取消选中此首选项。

Instant C#(vb.net转c#工具) 190611 官方版

  18、如果紧跟在声明之后,则将初始化移动到变量声明:默认情况下,如果初始化在声明后面的行上,则Instant C#将向变量声明添加变量初始化。

Instant C#(vb.net转c#工具) 190611 官方版

  19、检测未使用的局部变量:如果选择此选项,则Instant C#将注释或删除稍后在本地方法范围中未引用的局部变量。但是,如果变量被初始化为可能具有副作用的表达式(例如,方法调用或类型的实例化),则该变量将保留。

Instant C#(vb.net转c#工具) 190611 官方版

  20、更改本地对象变量的类型以匹配初始值设定项的类型:如果选择此选项,则即使使用初始值设定项声明变量,Instant C#也会将对象变量类型更改为初始值设定项的类型。

Instant C#(vb.net转c#工具) 190611 官方版

  21、检测不必要的局部变量赋值为Nothing:如果选择此选项,Instant C#将注释或删除不必要的局部变量赋值为Nothing。这通常发生在方法结束附近,并且是VB6中的常见做法。 VB.NET或C#都不需要这样做。

Instant C#(vb.net转c#工具) 190611 官方版

∨ 展开

网友评论

我要跟帖
取消
所有评论 共 0