有没有办法在aspx页面上的以下eval上使用else.
目前我的div如下:
<div class="tooltip" style="display: none">
<div style="text-align: center; font-weight: normal">
Value = <%# Eval("Percentage") + "%" %>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想在我的div上使用以下逻辑:
If(Percentage < 50)
display "0 %"
else
display "percentage"
Run Code Online (Sandbox Code Playgroud)
我试过这样的东西,但它不起作用:
if (<%# Eval("Percentage") %> < 50)
{
Eval("0");
}
else
{
<%# Eval("PassPercentage") + "%" %>
}
Run Code Online (Sandbox Code Playgroud)
我想知道是否可以在aspx页面上执行此类操作.我不能在aspx.cs.中做到这一点.
可能重复:
VB.NET中是否有条件三元运算符?
大家好,我们可以在VB.NET中使用Coalesce运算符(??)和条件三元运算符(:),就像在C#中一样?
我有一个更新函数,通过数据集更新sql server db表.表中的一个字段是整数并接受空值.所以,当我填充更新功能,我需要一种方法来进入当函数想要一个整数空.
我尝试这样做但 _intDLocation = ""引发异常
Dim _dLocation As String = udDefaultLocationTextEdit.Text
Dim _intDLocation As Integer
If _dLocation <> "" Then
_intDLocation = Integer.Parse(udDefaultLocationTextEdit.Text)
Else
'NEED HELP HERE
_intDLocation = ""
End If
Run Code Online (Sandbox Code Playgroud) 可能重复:
VB.NET中是否有条件三元运算符?
C#中是否有速记If-Then-Else的版本:
c = (a > b) ? a : b;
Run Code Online (Sandbox Code Playgroud)
含义...
if (a > b) {
c = a; }
else {
c = b; }
Run Code Online (Sandbox Code Playgroud)
..在VB.Net?
我在VB.NET中遇到Nullable DateTime问题(VS 2010).
方法1
If String.IsNullOrEmpty(LastCalibrationDateTextBox.Text) Then
gauge.LastCalibrationDate = Nothing
Else
gauge.LastCalibrationDate = DateTime.Parse(LastCalibrationDateTextBox.Text)
End If
Run Code Online (Sandbox Code Playgroud)
方法2
gauge.LastCalibrationDate = If(String.IsNullOrEmpty(LastCalibrationDateTextBox.Text), Nothing, DateTime.Parse(LastCalibrationDateTextBox.Text))
Run Code Online (Sandbox Code Playgroud)
给定空字符串时,方法1将一个Null(Nothing)值分配给gauge.LastCalibrationDate,但方法2将其赋予DateTime.MinValue.
在我的代码的其他地方我有:
LastCalibrationDate = If(IsDBNull(dr("LastCalibrationDate")), Nothing, dr("LastCalibrationDate"))
Run Code Online (Sandbox Code Playgroud)
这正确地将Null(Nothing)从三元运算符赋予Nullable DateTime.
我错过了什么?谢谢!
c在C#中有一个空条件运算符?.(有时称为Elvis运算符),如下所示:
var name = project?.customer?.name;
Run Code Online (Sandbox Code Playgroud)
它不会失败,而是返回nullif project或customernull.
VB.NET中有相同的东西吗?
请注意,我不是在寻找,If(b, x, y)而是非常?.替代.
我正在运行一个循环添加参数,当我得到一个NULL,程序平底锅.我的陈述如下:
mysql = "Insert into TABLE (field1) VALUES (:Col1)"
mycomm = New NpgsqlCommand (mySQL, conn)
myComm.Parameters.Add("Col" & cCnt, NpgsqlTypes.NpgsqlDbType.Double).Value = Obj.value
myComm.ExecuteNonQuery()
Run Code Online (Sandbox Code Playgroud)
如果Obj.value不为空,这可以正常工作,但如果Obj.value为空,我的Execute语句将失败.我想在数据库中插入一个NULL值.有任何想法吗?谢谢你的帮助!
我是 VB.net 新手,想使用三元运算符。
If prefixDt IsNot Nothing AndAlso prefixDt.Rows.Count > 0 Then
Return True
Else
Return False
End If
Run Code Online (Sandbox Code Playgroud)
我的尝试:
Return (prefixDt IsNot Nothing AndAlso prefixDt.Rows.Count > 0) ? True: False
错误:?不能在这里使用。
我正在使用SQLDataReader从数据库中检索可能为null的值.我已经解决了如何处理Null字符串值,但无法使用相同的技巧来处理整数或布尔值:
Using cmd As DbCommand = store.GetStoredProcCommand("RetrievePOCO")
store.AddInParameter(cmd, "ID", DbType.Int32, ID)
Using reader As IDataReader = store.ExecuteReader(cmd)
If reader.Read() = True Then
Dim newPOCO As New POCO()
With newPOCO
'If the source column is null TryCast will return nothing without throwing an error
.StatusXML = TryCast(reader.GetString(reader.GetOrdinal("StatusXML")), String)
'How can a null integer or boolean be set elegantly?
.AppType = TryCast(reader.GetInt32(reader.GetOrdinal("AppType")), System.Nullable(Of Integer))
.Archived = TryCast(reader.GetBoolean(reader.GetOrdinal("Archived")), Boolean)
Run Code Online (Sandbox Code Playgroud)
那么如何优雅地设置null整数或布尔值呢?我已经在C#中看到了建议,但它们没有正确转换为VB,给出'TryCast操作数必须是引用类型,但是整数?是值类型'编译器错误.