环境:
      win2k sp4 + Sql server 2k sp3 + .net 1.1 vs2003
问题:
     我在我的报表中引用了一个类,.net1.1中包含的adodb.dll,然后在自定义代码中使用
我的目的是通过在自定义的代码中实现独立查询数据库,然后给报表返回一些结果。
我在vs环境中调试,预览都没有问题,部属过程中也没有报错,但是在reports里面打开的时候就有问题了:
无法加载表达式宿主程序集。详细信息: 该程序集不支持部分受信任的调用方。 (rsErrorLoadingExprHostAssembly) 上网查询N久,看了好多咚咚,可能是因为太笨了,没有看明白,只是估计问题出在我调用的那个dll上面了,据说好像引用的那个dll也要部署的说,但是没有相应的措施,好像要改配置文件,但是我按照说明修改了也不行啊。有没有高人实践过,来指点一下阿……%
我看得文档是:
http://www.microsoft.com/china/msdn/library/data/sqlserver/dnsql2k.mspx?mfr=true代码如下:
'定义公共变量
Public Rsset As New ADODB.Recordset'判断是否达标的函数
Public Function IsGrade(ByVal Colmns_Value As Double, ByVal Field_Name As String) As String        Dim Grade_Value As Double        On Error Resume Next        Grade_Value = Rsset.Fields(Field_Name).Value
        If Grade_Value < Colmns_Value Then            IsGrade = "已"
        Else            IsGrade = "没有"
        End If
    End Function
'连接数据库,获取达标指标
 Public Function GetGrade(ByVal Month_Stamp As String)
        Dim Conn As New ADODB.Connection
        Dim ConnStr As String
        Dim StrSql As String
        Dim ServerName As String
        Dim Uid As String
        Dim Pwd As String'oracle 数据库服务名
        ServerName = "gxdb"
'oracle 数据库帐户
        Uid = "perf"
'oracle 数据库密码
        Pwd = "gxgperf"
        ConnStr = "Driver={Microsoft ODBC for Oracle};Server=" & ServerName & ";Uid=" & Uid & ";Pwd=" & Pwd & ";"
        Conn.CommandTimeout = 0
        Conn.CursorLocation = ADODB.CursorLocationEnum.adUseClient
        Conn.Open(ConnStr)
        Month_Stamp = DateAdd(DateInterval.Month, -1, CDate(Month_Stamp))
        Month_Stamp = Format(CDate(Month_Stamp), "yyyy-MM")
        StrSql = "select * from GX_SEND_CUMAIL_GRADE where month_stamp='" & Month_Stamp & "'"
        Rsset = Conn.Execute(StrSql)
        While Rsset.RecordCount = 0
            Month_Stamp = DateAdd(DateInterval.Month, -1, CDate(Month_Stamp & "-01 00:00:00"))
            StrSql = "select * from GX_SEND_CUMAIL_GRADE where month_stamp='" & Format(CDate(Month_Stamp), "yyyy-MM") & "'"
            Rsset = Conn.Execute(StrSql)
        End While
    End Function