我正在为我的机器人发出车间命令,其中包括栗子,戒指,橘子,甜甜圈,并在其中选择表情符号作为测试运行。当我尝试输入:chestnut:表情符号作为要购买的商品时,它将保存为“ item”,但在if语句中似乎与“:chestnut:”不同
[Command("buy")]
public async Task Buy(string item)
{
if (item == ":chestnut:" || item == ":ring:" || item == ":tangerine:" || item == ":doughnut:" || item == ":pick:")
{
await ReplyAsync($"{item} purchased!");
}
else
{
await ReplyAsync("Please enter of of the correct item emojis in order to purchase");
}
}
我也尝试了其他表情符号,但仍然可以从else区域得到响应
答案 0 :(得分:2)
以下应该起作用。只需将表情符号复制/粘贴到双引号中即可。他们毕竟是角色。
[Command("buy")]
public async Task Buy(string item)
{
if (item == "" || item == "" || item == "" || item == "" || item == "⛏")
{
await ReplyAsync($"{item} purchased!");
}
else
{
await ReplyAsync("Please enter of of the correct item emojis in order to
purchase");
}
}
此解决方案假定item
变量本身就是表情符号。
答案 1 :(得分:1)
您可以在if语句中添加断点 并查看作为项目字符串传递给您的函数的内容,然后在if语句中使用它,而不是“:chestnut:”。 希望有帮助。