Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过HTTP PUT方法存储数据_C#_Asp.net_Web Services_Postman_Put - Fatal编程技术网

C# 通过HTTP PUT方法存储数据

C# 通过HTTP PUT方法存储数据,c#,asp.net,web-services,postman,put,C#,Asp.net,Web Services,Postman,Put,这是我的HTTP PUT方法。这段代码并没有给出任何异常,但仍然并没有在数据库中存储数据,请任何人帮助。模型是我的getter setters类 [HttpPut] public HttpResponseMessage Addfood(int id,[FromBody] Model model) { Food food = new Food(); var userid = db.Users.FirstOrDefaul

这是我的HTTP PUT方法。这段代码并没有给出任何异常,但仍然并没有在数据库中存储数据,请任何人帮助。模型是我的getter setters类

[HttpPut]
        public HttpResponseMessage Addfood(int id,[FromBody] Model model)
        {
            Food food = new Food();
            var userid = db.Users.FirstOrDefault(e => e.ID == id);
            if (userid == null)
            {
                return Request.CreateErrorResponse(HttpStatusCode.NotFound, "No Record Found");
            }

            food.UID = id;
            food.Name = model.Foodname;
            food.Price = model.Foodprice;
            food.Image = model.Foodimage;
            food.Date_Time = DateTime.Today;
            Category category = new Category();
            category.Name = model.Categoryname;
            db.Categories.Add(category);
            food.CatID = category.ID;
            db.Foods.Add(food);
            db.SaveChangesAsync();
            return Request.CreateResponse(HttpStatusCode.OK, food);
        }
    }
我的数据库表

 [dbo].[Food](
        [ID] [int] IDENTITY(1,1) NOT NULL,
        [Name] [varchar](50) NULL,
        [Image] [image] NULL,
        [Price] [varchar](10) NULL,
        [CatID] [int] NOT NULL,
        [UID] [int] NOT NULL,
        [Date/Time] [datetime] NULL,


[dbo].[Category](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Name] [varchar](50) NULL,

[dbo].[User](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Name] [varchar](50) NOT NULL,
    [Phone] [numeric](18, 0) NOT NULL,
    [Email] [varchar](50) NOT NULL,
    [AID] [int] NOT NULL,
    [Password] [varchar](50) NOT NULL,
    [Date/time] [datetime] NULL,
    [IsVerify] [bit] NULL,
    [ProfilePicture] [image] NULL,
当我通过邮递员发出这个请求时。这些是我在邮递员中给出的参数

{"Foodname":"Bir","Foodprice":210,"Categoryname":"H000"}
我得到这个,但我的数据库没有更新。我也在post调用中使用此方法,但仍然不起作用

{
    "ID": 0,
    "Name": "Bir",
    "Image": null,
    "Price": "210",
    "CatID": 0,
    "UID": 52,
    "Date_Time": "2018-12-05T00:00:00+05:00",
    "Category": null,
    "User": {
        "ID": 52,
        "Name": "h999",
        "Phone": 3332158086,
        "Email": "a.b.c@yahooooo.com",
        "AID": 36,
        "Password": "030021",
        "Date_time": "2018-12-05T03:26:13.82",
        "IsVerify": null,
        "ProfilePicture": null,
        "Address": null,
        "Flags": [],
        "Foods": [],
        "Order_Tracking": [],
        "Order_Tracking1": []
    },
    "FoodRecommendations": [],
    "Order_Tracking": [],
    "Ratings": []
}
您正在检查是否有任何用户拥有此电子邮件:

if (db.Users.Any(x => x.Email == model.Email))
但听起来你想检查是否有其他用户有这封电子邮件。也许是这样的:

if (db.Users.Any(x => x.Id != id && x.Email == model.Email))

我不清楚你在问什么。到底是什么阻止用户更新其他信息?他们正在更新哪些信息,这些信息是如何失败的?这段代码和它有什么关系?