【发布时间】:2011-11-08 23:17:52
【问题描述】:
我需要一些帮助来将此过程(见下文)转换为 Entity Framework 4.0。有没有人对如何移植这个有任何建议。 目标项目包括; Silverlight 4、WCF RIA 服务、EF 4.0、SQL Server 2008 R2。
我唯一的要求是它需要放在托管代码中,而不是存储过程中。
Try
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandType = CommandType.Text;
string sql = "OPEN SYMMETRIC KEY " + this._encryptKey;
sql += " DECRYPTION BY CERTIFICATE " + this._encrpytCert;
sql += " SELECT TOP (1) CONVERT(nvarchar(50),DECRYPTBYKEY(Field1)) AS Name";
sql += " FROM Table3";
sql += " ORDER BY CONVERT(nvarchar(50),DECRYPTBYKEY(Field1))";
cmd.CommandText = sql;
Name = (String)cmd.ExecuteScalar();
bRtn = false;
}
catch (Exception ex)
{
System.Diagnostics.Debug.Print(ex.ToString());
}
请告诉我应该如何设置,谢谢!
【问题讨论】:
-
哦,对不起。我不知道我在喊。我是新来的。如果你告诉我,我是怎么喊的,我会小心不要再这样做了。谢谢!
-
标题中的所有大写字母 - 我为您编辑了它。除了我不确定你为什么可以使用存储过程之外,我对你的答案没有任何好的建议。
-
好的,谢谢。下次我会在主题中使用适当的大小写。至于sprocs的使用;出于额外的安全原因,我们希望将访问数据表的代码保留在数据库之外,以便如果数据库被未经授权的人审查,他们将不知道使用哪些表和键来提供数据。没有办法通过审查存储过程来“映射回来”。再次感谢您的帮助。
-
尝试查看codingheadache.com/?tag=entity-framework。希望对您有所帮助。
-
您好,感谢您的回复。该链接当然有很多重要信息,但缺少的是如何翻译/复制命令文本; cmd.CommandType = CommandType.Text; string sql = "打开对称密钥" + this._encryptKey; sql += " 证书解密 " + this._encrpytCert;我找不到有人在处理解密密钥的域服务类中编写 T-SQL 代码的示例,如上所示。如果您看过任何演示如何实现这样的代码的示例,请告诉我。谢谢! 〜戴夫
标签: c# silverlight-4.0 entity-framework-4 sql-server-2008-r2 encryption-symmetric