问题标签 [ibatis.net]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio-2008 - 将配置文件的数量减少到尽可能少
对于我的大多数应用程序,我使用iBatis.Net进行数据库访问/建模,使用log4Net进行日志记录。为此,我需要为每个项目创建多个 *.config 文件。例如,对于一个简单的应用程序,我需要以下 *.config 文件:
- app.config ([AssemblyName].[Extention].config)
- [程序集名称].SqlMap.config
- [程序集名称].log4Net.config
- [AssemblyName].SqlMapProperties.config
- 提供者.config
当这些应用程序从 DEV 到 TEST 再到 PRODUCTION 环境时,这些文件中包含的设置会根据环境而变化。
当每个项目有 5-10 个(或更多)支持可执行文件使文件数量变得复杂时,基础架构团队(向不同环境推出的团队)的工作量会变得相当高。我们也有丢失配置文件之一或配置文件输入错误的高风险。
避免这些风险的最佳方法是什么?我应该将所有配置文件合并到一个文件中吗?(使用 iBatis 可以吗?)我知道在 VisualStudio 2010 中,他们为这些配置文件引入了转换,允许开发人员为不同的环境设置所有设置,然后动态地(取决于启动的构建)配置文件得到更新到正确的版本。(VS 2010 - 转换)
感谢您提供的任何帮助。
ibatis.net - 需要 IBatis 的帮助吗?
我正在为我的应用程序使用 IBatis。我使用的是 IBatis 1.6.1 版本。我认为它可以处理与数据库连接相关的所有操作。但我现在有点担心这个。有时我会在日志文件中收到以下错误详细信息,
消息无法打开与“MySQL,MySQL 提供程序 5.0.8.1”的连接。源 IBatisNet.DataMapper 堆栈位于 IBatisNet.DataMapper.SqlMapSession.OpenConnection(String connectionString) 位于 IBatisNet.DataMapper.SqlMapSession.OpenConnection() 位于 IBatisNet.DataMapper.Commands.DbCommandDecorator.System.Data.IDbCommand.ExecuteReader() 位于 IBatisNet.DataMapper。 MappedStatements.MappedStatement.RunQueryForObject(RequestScope request, ISqlMapSession session, Object parameterObject, Object resultObject) at IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForObject(ISqlMapSession session, Object parameterObject, Object resultObject) at IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForObject(ISqlMapSession会话,对象参数对象)在 IBatisNet.DataMapper.SqlMapper.QueryForObject(字符串语句名称,
有人对错误有一些想法吗?
visual-studio - iBatis.NET SqlMap.config 文件未找到
我在一个非常简单的测试项目(VS 2008)中使用 iBatis.NET。当我运行套件并实例化 Mapper 时,打开 SqlMap.config 时会弹出 FileNotFoundException。iBatis.NET 查找这个文件的路径是“当前TestResults 文件夹\Out”。自然地,文件不会被复制到那里,因此 Mapper 构造函数会失败。
我必须完全误解正在发生的事情,因为我无法在 SO 或整个网络上找到任何信息来表明我如何解决这个问题。我确实遇到了一些与 iBatis.NET 无关的情况,其中向用户建议的解决方案是在 .testrunconfig 文件中将“启用部署”设置为“关闭”,以强制 VS 从 bin\Debug 运行测试。
然而,在我走这条路之前,我很想知道其他人在测试项目中使用 iBatis.NET 时做了什么。我有一种不愉快的感觉,即决议是微不足道的。
orm - 维护/自动生成 IBatis SQL 映射?
我刚刚开始了一份新工作,并从地狱继承了这个项目。地狱 = {超过计划 2 年,过于复杂,同时使用 oracle 和 sql server}
Oracle 服务器中有 100 多个存储过程,每个存储过程都有一个 IBatis SQL Map。有些共享相同的结果图。DBA 喜欢每天更改存储过程而不告诉我。
问题:是否有任何工具可以检查解决方案中的所有 IBatis SQL 映射。理想情况下,它将验证:
- 存储过程存在
- 存储过程参数与参数映射中的参数匹配
- 存储过程结果 [列名] 与结果映射中的匹配
- 存储过程结果没有丢失结果映射中指定的任何内容
- 结果映射中的对象属性标题与结果映射中列出的匹配
背景:我通常只使用 SQL Server 和 SubSonic 2.2 作为 ORM。这样我只需执行一个命令,我的 DAL 就会神奇地自动生成,这样,如果我需要的列丢失,我会得到一个易于理解的编译时错误,而不是令人困惑的运行时错误。我可以在这里使用类似的工具吗?
感谢您的帮助!
asp.net - 在 ASP.NET 中缓存每个请求?
我在一个工作项目中同时使用 IBatis.NET 和 Spring.NET,我想知道我是否可以利用这两个/任何一个框架来实现对我的 DAL 层的所有调用的“每个请求缓存”。换句话说,每次 HTTP 请求由 ASP.NET 提供服务时,我想首先调用 DAL 方法来访问远程数据库,但之后的所有调用都会从缓存中膨胀。
我看过一些文章描述了一种使用 HttpContext.Current 实现此目的的方法,但我无法忍受使用 System.Web 引用污染我的 DAL 层的想法。如果可能的话,我还想利用这些框架,因为我不喜欢重新发明轮子。
sql-server-ce - iBatis.Net SQL Server Compact Edition 3.5
I want to migrate one of our databasis from SQL Server Express to SQL Server Compact 3.5. I'm using iBatis.Net but do not know what the providers.config must look like for me to be able to access SQL CE 3.5.
Can anyone help me out with this?
Thanks Johan
.net - 是否有像 iBATIS.NET 这样的查询映射器,但具有脏跟踪、延迟加载和级联更新?
问题:
- 具有仅存储过程任务的 DBA 控制的数据库。
- 期望在 POCO 中定义域。
所以我决定我需要一个为存储过程和/或遗留数据库设计的 ORM。
理想情况下,ORM 应该允许我以声明方式(或流畅地)将域对象映射到 CRUD 存储过程。
迄今为止的一些发现:
- 如果我可以控制为延迟加载生成的查询,NHibernate就可以工作。
- iBATIS.NET可以完美运行,但我找不到以下示例:
- 对象状态跟踪(新/更新/删除/等)
- 父/子提交事务(如果父被更新,也更新所有脏子对象)。
- 与我们的数据库约定一起使用的内部开发的ORM是一种选择,我们已经开始使用它。但我想确保我们别无选择。
非选项:
- SubSonic确实包装了存储的过程,但它不会在过程和实体之间映射。如果需要的话,我可以实现某种映射器,但还有其他因素也影响 SubSonic,例如缺乏 VS2005(或 SharpDevelop)支持以及将数据访问与域对象混合。
- 删除 SProcs不是一种选择。数据完整性是 DBA 和上级人员非常关心的问题,他们觉得使用 SProcs 是最安全的。这不是我说服他们的地方。
有谁知道适合我需要的 ORM,或者有一种方法可以克服不适合我 100% 需要的 ORM 中的限制?
欢迎任何建议!
c# - IBatis.net 将项目从 VS2003 转换为 VS2008 在加载时崩溃
该项目在 2003 年一直运行良好,但在 2008 年打开它时,我们现在收到以下错误。我已经尝试从“附件”结果图中提取所有代码,然后它只是进入下一个结果图并告诉我与该结果图相同的错误。有什么想法吗?
[错误]-- 访问附件数据源--错误:数据连接配置无效。
描述性:Net.Autodata.Accessories.Exceptions.AccessoryConnectException:无法加载 iBATIS.NET 默认 SQL MAP ---> IBatisNet.Common.Exceptions.ConfigurationException:- 加载 SqlMap 时发生错误。- 初始化 ResultMap - 错误发生在 .
- 检查附件。附件。---> IBatisNet.Common.Exceptions.ConfigurationException:无法配置名为“Accessories.Accessory”的 ResultMap,原因:对象引用未设置为对象的实例。---> System.NullReferenceException:对象引用未设置为对象的实例。在 IBatisNet.Common.Utilities.Objects.ObjectFactory.CreateFactory(Type typeToCreate, Type[] types) 在 IBatisNet.DataMapper.Configuration.ResultMapping.ResultMap.GetChildNode(ConfigurationScope configScope) 在 IBatisNet.DataMapper.Configuration.ResultMapping.ResultMap.Initialize( ConfigurationScope configScope) --- 内部异常堆栈跟踪结束 --- 在 IBatisNet.DataMapper.Configuration.Serializers 的 IBatisNet.DataMapper.Configuration.ResultMapping.ResultMap.Initialize(ConfigurationScope configScope) 处。
nhibernate - IBatis.Net DataMapper 是否正在积极开发?
IBatis.Net DataMapper 是否正在积极开发?他们有 .Net 3.5 的版本吗?我在 iBatis Java DataMapper 上看到了很多活动,因为他们计划发布带有注释支持的 iBatis3。.Net 对应方的状态如何?
sql-server-2008 - 使用 iBatis.NET 获取存储过程的返回值
如何使用 iBatis.NET 检索存储过程的返回值?下面的代码成功调用了存储过程,但是 QueryForObject<int> 调用返回 0。
SqlMap
C# 代码
存储过程
仅供参考,我使用的是 iBatis 1.6.1.0、.NET 3.5 和 SQL Server 2008。