如何转换符号“";在c#到vb.net中

本文关键字:vb net quot 何转换 转换 符号 | 更新日期: 2023-09-27 18:20:26

我正在尝试将c#代码转换为vb.net,但我很难将c#中的符号"?"转换为vb.net

 public audit_trail Mapper(IDataReader rdr)
 {
      audit_trail audit_trail = new audit_trail();
      audit_trail.Log_id = rdr["Log_id"] is DBNull ? 0 : (int)rdr["Log_id"];            
      audit_trail.Host = rdr["Host"] is DBNull ? string.Empty : (string)rdr["Host"];
      return audit_trail;
 } 

如何将符号"?"转换为vb.net??

我想转换

  audit_trail.Host = rdr["Host"] is DBNull ? string.Empty : (string)rdr["Host"];

类似

if rdr["Host"] is DBNull.Value then
  audit_trail.Host =  string.Empty 
else 
  audit_trail.Host = rdr["Host"]
end if

但是代码太长,代码行太多。。你们有换短款的想法吗?

如何转换符号“";在c#到vb.net中

三元运算符的visual basic语法是If([condition,] op1, op2)

audit_trail.Host = If(IsDBNull(rdr("Host")), String.Empty, CType(rdr("Host"), String))