我想知道是否有人可以帮我改写CFML中的以下C#代码?我可以访问DLL并可以使用CFOBJECT
成功访问这些类。我无法解决的是如何将以下语法从C#转换为CFML。我整个下午一直在努力,而且无处可去,我找不到任何关于这样做的好教程。
可以在http://api.korzh.com/easyquery/asp-net看到API参考。
代码如下:
using Korzh.EasyQuery;
using Korzh.EasyQuery.Db;
using Korzh.EasyQuery.WebControls;
protected void Page_Load(Object sender, EventArgs e)
{
DbQuery query = (DbQuery)Session["QUERY"];
if (query == null) {
//we didn't open this page before
string modelPath = this.MapPath("~/App_Data/MyModel.xml");
Korzh.EasyQuery.DataModel model = new Korzh.EasyQuery.Db.DbModel();
model.LoadFromFile(modelPath);
query = new Korzh.EasyQuery.Db.DbQuery();
query.Model = model;
query.Formats.SetDefaultFormats(FormatType.MsSqlServer);
Session["QUERY"] = query;
}
}
非常感谢!
澄清:
EasyQuery提供了一组jQuery小部件,它们使用数据库的JSON表示(我没有任何生成数据模型的问题,因为这可以使用EasyQuery提供的工具完成)来显示正确的列等。查询构建器。
在UI中构建查询时,可以将其发送到服务器。查询不会作为SQL发送,这将是一个安全风险,但作为某种混淆的字符串发送。然后可以使用ASP.NET类将此字符串转换为SQL,以便可以对数据库运行查询。我希望能够做的是在ColdFusion中使用这些ASP.NET类将字符串转换为SQL。
我相信(但不确定)http://docs.korzh.com/easyquery/aspnet/getting-started-webforms处的代码演示了如何生成SQL。
答案 0 :(得分:0)
Easy似乎是一个生成SQL查询的完整应用程序。它让我想起了一个非常好看的Management Studio替代品
<强> CFQUERY 强>
如果您要运行SQL,只需将左下角的SQL复制到<cfquery>
标记即可。 (推荐)
<强> CFOBJECT 强> 如果您希望通过ColdFusion访问.Net对象,可以通过
完成<cfobject type=".NET" name="mathInstance" class="mathClass">
assembly="C:/Net/Assemblies/math.dll">
<cfset myVar=mathInstance.multiply(1,2)>
来源: https://learn.adobe.com/wiki/display/coldfusionen/cfobject%3A+.NET+object
如果您希望在ColdFusion中重建此应用程序,这是一个非常大的项目,超出了SO主题的范围
答案 1 :(得分:0)
您需要使用XmlParse将xml文件读取为一个,以便Coldfusion可以处理它。我不确定是否有例程生成SQL来在SQL Server中设置db模型。