标签: daab

尝试配置企业库5.0时出现问题(数据访问应用程序块)

我在尝试从Enterprise Library 5.0运行DAAB时遇到了一些问题.我按照教程按照步骤操作,但是收到错误...

1)下载/安装企业库

2)添加对我需要的块的引用(common/data)

3)进口

Imports Microsoft.Practices.EnterpriseLibrary.Common
Imports Microsoft.Practices.EnterpriseLibrary.Data
Run Code Online (Sandbox Code Playgroud)

4)通过企业库配置软件.我从我的网站打开web.config.然后我单击块,然后单击添加数据设置...填写我的详细信息并保存/关闭

5)然后我(思考设置完成)尝试通过获取数据库的实例

 Dim db As Database = DatabaseFactory.CreateDatabase() 
Run Code Online (Sandbox Code Playgroud)

6)我编译并收到以下错误:

无法加载文件或程序集"Microsoft.Practices.EnterpriseLibrary.Data,Version = 5.0.414.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其中一个依赖项.定位的程序集的清单定义与程序集引用不匹配.(来自HRESULT的异常:0x80131040)(C:\ site\web.config第4行)

我的web.config的第4行是由配置工具生成的,它是:

<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
Run Code Online (Sandbox Code Playgroud)

我错过了必要的步骤吗?我是否按错误的顺序完成了这些步骤?我弄错了吗?

非常感谢你的帮助.

enterprise-library web-config data-access-layer daab enterprise-library-5

13
推荐指数
1
解决办法
5万
查看次数

如何将DbType.Time的Datareader结果转换为Timespan对象?

我正在使用带有DAAB 4.0框架的c#从一个MS SQL 2008数据库中读取一个结果,该数据库的列类型为dbtype.time,来自datareader.

我的问题是MSDN文档说dbtype.time应该映射到一个时间跨度但是我看​​到的唯一接近时间跨度的接近构造函数接受一个long,并且从datareader返回的结果不能转换为long,或者直接转换为时间跨度.

我发现这篇文章显示了datareader.getTimeSpan()方法,但daab 4.0中的datareader似乎没有这个方法.

那么如何将结果从datareader转换为timepan对象?

c# time timespan data-access daab

6
推荐指数
2
解决办法
1万
查看次数

SQLDataReader上的转换错误

我的网站使用的是企业库v 5.0.主要是DAAB.一些函数,如executioncalar,executionataset正在按预期工作.当我开始使用读者时会出现问题

我的include类中有这个函数:

Public Function AssignedDepartmentDetail(ByVal Did As Integer) As SqlDataReader
    Dim reader As SqlDataReader
    Dim Command As SqlCommand = db.GetSqlStringCommand("select seomthing from somewhere where something = @did")
    db.AddInParameter(Command, "@did", Data.DbType.Int32, Did)
    reader = db.ExecuteReader(Command)
    reader.Read()
    Return reader
End Function
Run Code Online (Sandbox Code Playgroud)

这是从我的aspx.vb中调用的,如下所示:

reader = includes.AssignedDepartmentDetail(Did)
If reader.HasRows Then
    TheModule = reader("templatefilename")
    PageID = reader("id")
Else
    TheModule = "#"
End If
Run Code Online (Sandbox Code Playgroud)

这会在db.ExecuteReader行上出现以下错误:

无法将类型为"Microsoft.Practices.EnterpriseLibrary.Data.RefCountingDataReader"的对象强制转换为"System.Data.SqlClient.SqlDataReader".

任何人都可以了解我如何开展这项工作.通过entlib与读者打交道时,我是否会遇到问题?

.net enterprise-library sqldatareader daab

5
推荐指数
1
解决办法
7800
查看次数

某些企业库应用程序块是否已过时?

随着ASP.Net中新的范例的引入,企业库中的一些应用程序块是否已经过时了?例如,请看以下内容:

  • ASP.Net成员,角色和配置文件提供程序,而不是安全应用程序块
  • LINQ to SQL&Entity Framework而不是数据访问应用程序块

上述应用程序块是否仍然相关?有人可以说明何时以及为何使用一个而不是另一个?

asp.net authentication authorization enterprise-library daab

4
推荐指数
1
解决办法
1694
查看次数