Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.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# 将字符串查询传递给wcf并从数据库中检索数据_C#_Silverlight_Wcf_Silverlight 4.0 - Fatal编程技术网

C# 将字符串查询传递给wcf并从数据库中检索数据

C# 将字符串查询传递给wcf并从数据库中检索数据,c#,silverlight,wcf,silverlight-4.0,C#,Silverlight,Wcf,Silverlight 4.0,我正在做银灯应用程序,这对我来说真的很新鲜 是否可以通过将查询作为字符串传递给wcf并从数据库中检索数据来检索数据 不是linq的查询可以是任何内容。。比如从A中选择x,y,z,其中A=。。 或者从x中选择不同的名称 基本上是一个函数,它应该接受字符串查询并检索它。是的,这是可能的。创建一个WCF方法,该方法接受作为查询的字符串。对于返回类型,您可能需要做更多的工作以使其易于管理。您可能需要某种类型的DTO对象集合,这需要对DTO对象进行非常灵活的设计,或者限制查询的允许结果集 在SO问题中讨论

我正在做银灯应用程序,这对我来说真的很新鲜

是否可以通过将查询作为字符串传递给wcf并从数据库中检索数据来检索数据

不是linq的查询可以是任何内容。。比如从A中选择x,y,z,其中A=。。 或者从x中选择不同的名称


基本上是一个函数,它应该接受字符串查询并检索它。

是的,这是可能的。创建一个WCF方法,该方法接受作为查询的字符串。对于返回类型,您可能需要做更多的工作以使其易于管理。您可能需要某种类型的DTO对象集合,这需要对DTO对象进行非常灵活的设计,或者限制查询的允许结果集

在SO问题中讨论了如何从web服务返回数据集/数据表

正如@w0lf指出的,您必须考虑到可能存在严重的安全风险。您将要做的是为任何有权访问您的WCF服务的人提供在SQL server上运行任意查询的权限。如果您使用精心编制的权限在SQL server上的特定帐户下运行这些查询,则可以安全地执行这些查询。请参阅例如,允许使用只读用户运行SQL查询的


一般来说,我认为以字符串形式提供查询是个坏主意,但如果您确实需要它,它确实是可能的。

是的,它是可能的。创建一个WCF方法,该方法接受作为查询的字符串。对于返回类型,您可能需要做更多的工作以使其易于管理。您可能需要某种类型的DTO对象集合,这需要对DTO对象进行非常灵活的设计,或者限制查询的允许结果集

在SO问题中讨论了如何从web服务返回数据集/数据表

正如@w0lf指出的,您必须考虑到可能存在严重的安全风险。您将要做的是为任何有权访问您的WCF服务的人提供在SQL server上运行任意查询的权限。如果您使用精心编制的权限在SQL server上的特定帐户下运行这些查询,则可以安全地执行这些查询。请参阅例如,允许使用只读用户运行SQL查询的


一般来说,我认为以字符串形式提供查询是一个坏主意,但如果您确实需要它,它确实是可能的。

这是可能的,但不要这样做

这是一个巨大的安全风险:任何运行Silverlight应用程序的人都可以嗅到从应用程序到WCF服务的流量,并看到其中一个参数实际上是SQL查询


此外,请求可能被篡改,这可能会让用户有权在您的数据库上运行任意查询。

这是可能的,但不要这样做

这是一个巨大的安全风险:任何运行Silverlight应用程序的人都可以嗅到从应用程序到WCF服务的流量,并看到其中一个参数实际上是SQL查询

此外,请求可能会被篡改,这可能会让用户有权在您的数据库上运行任意查询