远程服务器返回错误:(415)不支持的媒体类型。 OData服务

时间:2016-04-25 11:01:28

标签: c# odata

远程服务器返回错误:(415)不支持的媒体类型。 我正在使用OData服务,如果我使用ApiControler然后它的工作。

有时也扔远程服务器返回错误:(406)不可接受。

public string SaveData(string ApiName, string JsonParam)
    {
        try
        {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://localhost:9093/api/" + ApiName + "/");
            req.Method = "POST";
            req.ContentType = "application/json;odata=verbose";
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            using (var sw = new StreamWriter(req.GetRequestStream()))
            {
                sw.Write(JsonParam);
                sw.Flush();
            }
            HttpWebResponse rep = (HttpWebResponse)req.GetResponse();
            var outputData = new StreamReader(rep.GetResponseStream()).ReadToEnd();
            return outputData;
        }
        catch (Exception)
        {
            return "ERROR";
        }

    }    


public class EmployeesController : ODataController
{   
    [HttpPost]
    public HR_EmployeeMaster Post([FromBody]HR_EmployeeMaster value)
    {
        HrEmployeeServiceFacadeClient employeeObj = new HrEmployeeServiceFacadeClient();
        string employeeJsonString = JsonConvert.SerializeObject(value);
        if (string.IsNullOrEmpty(Convert.ToString(value.EmployeeId)) || Convert.ToString(value.EmployeeId) == "00000000-0000-0000-0000-000000000000")
        {
            value.EmployeeId = Guid.NewGuid();
            var employeeResponse = employeeObj.Add(value);
        }
        else
        {
            var employeeResponse = employeeObj.Update(value);
        }
        return value;
    }
}

0 个答案:

没有答案