【发布时间】:2021-09-22 18:04:49
【问题描述】:
我想事先检查一个变量,看看它是空的还是空的。如果为null或为空,则应采用我定义的字符串。我的代码:
public string Ergebnis { get; set; }
public string Stufe { get; set; }
public string Niveau { get; set; }
public string Note { get; set; }
public DateTime? Datum { get; set; }
以及功能:
public void EndEdit()
{
var newdate = Convert.ToDateTime(Datum).ToShortDateString();
var client = new RestClient("MYDOMAIN");
var request = new RestRequest("SOME THINGS", Method.POST)
.AddUrlSegment("name", Name)
.AddUrlSegment("kompetenzID", KompetenzID)
.AddUrlSegment("ergebnis", Ergebnis)
.AddUrlSegment("stufe", Stufe)
.AddUrlSegment("niveau", Niveau)
.AddUrlSegment("note", Note)
.AddUrlSegment("datum", newdate)
.AddUrlSegment("kuerzel", Kuerzel)
.AddUrlSegment("background", Background)
.AddHeader("Authorization", "Bearer " + ViewFingerPrint);
IRestResponse restResponse = client.Execute(request);
if (restResponse.StatusCode == HttpStatusCode.BadRequest)
{
MessageBox.Show("Der SuS ist nicht in der Datenbank vorhanden.");
}
else
{
}
}
我认为我可以使用 if 语句来做到这一点。但是,我的函数无法识别该变量。我的代码:
if (string.IsNullOrEmpty(Ergebnis))
{
string Ergenisneu = "-";
} else
{
string Ergebnisneu = Ergebnis;
}
如果我在这里插入结果:
.AddUrlSegment("ergebnis", Ergebnis)
它无法识别变量并说:从未使用过该变量。我还能如何告诉变量它在 null 处有一个字符串?
同样的事情发生在这个变体中:
if (string.IsNullOrEmpty (Ergebnis))
string Ergebnis= "-";
【问题讨论】:
-
您在嵌套范围内声明了一个新变量。将
string放在if语句中的变量前面,以使用已经存在的Ergebnis属性。 -
Ergebnis = string.IsNullOrEmpty (Ergebnis) ? "-" : Ergebnis; -
非常感谢!效果很好!
标签: c# validation null