Skip to main content
 首页 » 编程设计

c#之如何公开带有 Func 参数的 Web 方法

2024年01月25日27emanlee

我想知道我是否可以使用 Func 参数公开一个 web 方法!

[WebMethod] 
public List<Entity> ReadEntities(Func<Entity, bool> predicate) 
{ 
    using (var entities = new GwEntities()) 
        return entities.Entities.Where(predicate).ToList(); 
} 

当我尝试更新 Web 引用时,Visual Studio 出现异常:

System.Func[GwModel.Entity,SystemBoolean] caonnot be serialized because it does not have a parameterless constructor

请有任何解决方法!

请您参考如下方法:

你不能像这样序列化你自己的代码。序列化程序应该从哪里开始,在哪里停止?它是否应该仅传输您的方法的代码以及从该方法中调用的所有程序集? LINQ to objects 做类似的事情。你应该看看Expressions .这些可以通过网络进行序列化。