在Silverlight中验证Oracle Sql条件表达式

本文关键字:Sql 条件 表达式 Oracle 验证 Silverlight | 更新日期: 2023-09-27 18:00:44

是否可以在Silverlight应用程序中验证Oracle-SQL的条件表达式。在我的项目中,我允许用户输入自定义的SQL条件表达式来获取数据,我希望为用户提供一个验证选项。

谢谢&当做Rithesh Krishnan

在Silverlight中验证Oracle Sql条件表达式

无法从Silverlight进行SQL验证,必须在服务器上进行。

这篇文章中有很多关于SQL验证技术的有趣讨论。但是,其中大部分不适用于Oracle。

如果您需要同时支持这两者,则可以使用transactions and rollbacks创建通用解决方案。我在下面的例子中使用了ADO.NET类,但它们可以与ODP.NET 中的对应类互换

using (DbConnection connection =
    new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
{
    using (DbCommand command = connection.CreateCommand())
    {
        DbTransaction transaction = null;
        try
        {
            connection.Open();
            transaction = connection.BeginTransaction();
            command.Transaction = transaction;
            command.CommandText = "The SQL to validate";
            command.ExecuteNonQuery();
            //The SQL is valid
        }
        catch
        {
            // The SQL is not valid
        }
        finally
        {
            transaction.Rollback();
        }
    }
}

为了向用户提供反馈,您可以实现自己的通知,或者如果您希望它看起来像一个验证错误:在绑定目标上实现INotifyDataErrorInfo,并在服务器的回调中设置错误。