-1

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

感谢和问候 Rithesh Krishnan

4

1 回答 1

0

无法从 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();
        }
    }

}

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

于 2013-02-22T07:29:41.530 回答