Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.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
.net 来自一个控制器的Web API 2 Put调用来自另一个控制器的Post不工作_.net - Fatal编程技术网

.net 来自一个控制器的Web API 2 Put调用来自另一个控制器的Post不工作

.net 来自一个控制器的Web API 2 Put调用来自另一个控制器的Post不工作,.net,.net,我有一个WebAPI项目,它有两个模型,传感器和传感器日志。传感器有状态和名称,传感器日志有名称、状态和日期属性。所有这些都是他们自己的作品 我的问题是,当我把我也想张贴到传感器日志传感器。这样我可以更新日志,同时保持传感器本身的当前状态。现在,我可以从他们自己的控制器向传感器和传感器日志发送post,但是当我尝试从传感器的put方法调用传感器日志的post时,我得到了一个意外的结果 我在传感器和传感器日志上都有一个帖子,而不是贴在传感器上和传感器日志上。即,put不再更新传感器,而是在传感器表

我有一个WebAPI项目,它有两个模型,传感器和传感器日志。传感器有状态和名称,传感器日志有名称、状态和日期属性。所有这些都是他们自己的作品

我的问题是,当我把我也想张贴到传感器日志传感器。这样我可以更新日志,同时保持传感器本身的当前状态。现在,我可以从他们自己的控制器向传感器和传感器日志发送post,但是当我尝试从传感器的put方法调用传感器日志的post时,我得到了一个意外的结果

我在传感器和传感器日志上都有一个帖子,而不是贴在传感器上和传感器日志上。即,put不再更新传感器,而是在传感器表中创建一个新传感器,然后将新传感器与发布的传感器日志相关联。这可能是什么原因造成的? 公共异步传感器(int id,传感器) {

        db.Entry(sensor).State = EntityState.Modified;

        try
        {
            db.SaveChanges();
        }
        catch (DbUpdateConcurrencyException)
        {

        }

        // return StatusCode(HttpStatusCode.NoContent);

        using (var client = new HttpClient())
        {

            client.BaseAddress = new Uri("http://localhost:50293/");
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));


            // HTTP POST
            var log = new SensorLog() { StateId = sensor.StateId, SensorId = sensor.Id };
            HttpResponseMessage responsee = await client.PostAsJsonAsync("api/SensorLogs/", log);

        }        
    }

我在下面编辑了问题并添加了代码。我在下面编辑了问题并添加了代码