我有一个我创建的 API。我(终于)设法用它 GET 和 POST 。现在我想在提交之前检查 POST。
我有一个具有id, name, city, state, 和属性的类(这是正确的词吗?我还在学习行话)country。
我有一个带有按钮的表单,该按钮有一个单击事件方法,如下所示:
protected void submitButton_Click(object sender, EventArgs e)
{
void Add_Site(string n, string ci, string s, string co)
{
using (var client = new HttpClient())
{
site a = new site
{
name = n,
city = ci,
state = s,
country = co
};
var response = client.PostAsJsonAsync("api/site", a).Result;
if (response.IsSuccessStatusCode)
{
Console.Write("Success");
}
else
Console.Write("Error");
}
}
Add_Site(nameText.Text, cityText.Text, stateText.Text, countryText.Text);
}
现在,在这一点上,它按预期工作。但是,我想限制它。
我想做的是让它看看nameText.Text价值。在它运行该POST语句之前,我希望它查看GETAPI中的其他值并确保该名称不存在。
虽然我知道我可能会更新数据库以使该name字段唯一,但我更愿意在 C# 中以编程方式进行。
这在我的 C# 代码中是可能的吗?如果是这样,我将使用什么函数以及如何让它返回Site.Name属性来比较我的nameText.Text值?
编辑:这是POST其中一条评论中要求的代码。注意:这是在我添加控制器时由 Visual Studio 自动生成的。
// POST: api/site
[ResponseType(typeof(site))]
public IHttpActionResult Postsite(site site)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
db.site.Add(site);
db.SaveChanges();
return CreatedAtRoute("DefaultApi", new { id = site.id }, site);
}
我什至不知道从哪里开始添加“如果名称已经存在,则抛出错误”,因此某种演练就足够了。
胡说叔叔
相关分类