我已经创建了一个简单的WCF数据服务,如下所示。
namespace DataService
{
using System;
using System.Collections.Generic;
public partial class MemoryPackageData
{
public long c1 { get; set; }
public long c2 { get; set; }
public long c3 { get; set; }
public long c4 { get; set; }
}
}
namespace DataService
{
public class WCFDataService : DataService<DBEntities>
{
// This method is called only once to initialize service-wide policies.
public static void InitializeService(DataServiceConfiguration config)
{
// TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc.
// Examples:
config.SetEntitySetAccessRule("MemoryPackageDatas", EntitySetRights.All);
config.SetServiceOperationAccessRule("InsertEntityData", ServiceOperationRights.All);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3;
}
//[WebInvoke(UriTemplate = "InsertEntityData/?package_id={package_id}&package_size={package_size}")]
[WebInvoke(UriTemplate = "InsertEntityData?package_id={package_id}")]
public void InsertEntityData(Int64 package_id, Int64 package_Size = 10)
{
// some stuff
}
现在,当我在firefox中运行此服务并传递一个参数时,该参数在URL中是必需的。

我在这里尝试了许多不同的方法来调用这个方法。但是不确定如何处理这些参数列表。
方法正在向表中插入数据。
有谁能给我引路吗?
谢谢,
米塔尔。
发布于 2015-02-19 18:27:07
默认情况下,WebInvoke将Method=视为“POST”。因此您可以使用WebGet属性或指定Method="GET“
发布于 2015-02-28 09:53:37
在浏览器中,默认的方法是Get。这就是服务将返回405的原因。您可以使用Fiddler将请求与"Post“组合在一起,然后尝试。
https://stackoverflow.com/questions/28603835
复制相似问题