与我的asp.net进行通信会一直返回空值...我实际上不确定原因。
我已经使用Post Man将信息推回去查看结果,不包括使用WPF以确保它是我的API。我能回来的唯一结果就是我正在寻找的结果...... I.E. BanID返回BanID所有其他人返回空值。
我已将此方法用于同一API上的其他内容,并且工作正常......某处我犯了错字。
这是针对与WPF与MySQL通信的C#asp.net上的搜索框
[HttpPost]
[Route("A3Bans/searchBan")]
public string oSearchBan(tBan ban)
{
{
tBan bans = new tBan();
string dbConnection = "datasource=127.0.0.1;port=3306;username=admin;password=123";
MySqlConnection conDataBase = new MySqlConnection(dbConnection);
MySqlCommand dbSearch;
conDataBase.Open();
MySqlDataReader dbReader;
string selectQuery = "Select * FROM a3bans.bans WHERE BanID=" + int.Parse(ban.BanID);
dbSearch = new MySqlCommand(selectQuery, conDataBase);
dbReader = dbSearch.ExecuteReader();
if (dbReader.Read())
{
tBan searchBan = new tBan();
searchBan.GuidOrIP = dbReader.GetString("GUID");
//searchBan.BanType = dbReader.GetString("BanType");
searchBan.BanReason = dbReader.GetString("Reason");
searchBan.Proof = dbReader.GetString("Proof");
bans.Equals(searchBan);
}
dbReader.Close();
return bans.GuidOrIP;
}
答案 0 :(得分:0)
如果BanID
是PK,则只返回一行
If there are multiple rows for one BanID, then you need to iterate dbReader
while(dbReader.Read())
{
}
最后检查你的退货声明。
答案 1 :(得分:0)
更改
bans.Equals(searchBan);
要
bans = searchBan;