Coldfusion应用程序.cfc



这可能是一个愚蠢的问题,但当我的数据源位于cfm页面中时,它会很好地工作,但是当我将数据源放入我的应用程序.cfc时,它就会出错。

CFM文件中的代码

<cfquery name = "getlist" datasource="jeb48_shoppingcart">
 SELECT ProductID, ProductName, ProductQty, ProductPrice, ProductDescription
 FROM Products;
</cfquery>

CFC 代码

<cfcomponent> 
   <cfset This.name = "TestApplication"> 
   <cfset This.clientStorage = "jeb48_northwind"> 
   <cfset This.clientmanagement="True"> 
   <cfset This.loginstorage="Session"> 
   <cfset This.sessionmanagement="True"> 
   <cfset This.sessiontimeout="#createtimespan(0,0,10,0)#"> 
   <cfset This.applicationtimeout="#createtimespan(5,0,0,0)#"> 
</cfcomponent>

您的Application.cfc没有正确设置数据源。

clientstorageclient变量使用-点击此处了解更多信息

datasource用于cfquery数据源:

<cfset this.datasource="cfartgallery">

您可以在此处阅读有关datasource属性的更多信息

一种解决方案是在应用程序启动时将数据源定义为应用程序变量。如果有多个数据源,则可以使用包含数据源结构的应用程序变量。Antony是正确的,您只是在为客户端存储创建对数据源的引用。这并不意味着它有效。

<cfset APPLICATION.dsn = {}>
<cfset APPLICATION.dsn.main = "jeb48_northwind">
<cfset APPLICATION.dsn.logging = "loggingDataSource">
<cfquery name = "getlist" datasource="#APPLICATION.dsn.main#">
SELECT ProductID, ProductName, ProductQty, ProductPrice, ProductDescription
FROM Products;
</cfquery>

最新更新