问题标签 [subsonic2.2]

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.

0 投票
2 回答
408 浏览

.net - 我如何告诉 SubSonic 2 使用不同的 .config 文件?

我在一个项目中使用 SubSonic 2,我想指定一个与默认 App.config 不同的 .config 文件。如何告诉 SubSonic 使用特定的配置文件?

0 投票
1 回答
464 浏览

c# - SubSonic:TableColumn 的 MaxLength(超过)

因此,我们将 SubSonic 用作我们的一个项目的 DAL/ORM。一切都运行得很顺利(数据库已经存在,所以我们在它上面使用了 SubSonic),但是,有时我们会遇到一个异常,说整数超出了最大长度。在这个例子中,我们的 MySql 字段是一个 int(4) 签名的。其中,根据 MySql 文档将允许以下范围:

-2147483647 至 2147483647。

现在,我的问题是,MaxLength 在 SubSonic 中是如何规定的?是位数吗?因为这意味着它只允许 -9999 到 9999,对吗?这似乎是一个相当大的差异,我希望情况并非如此,否则我们将遇到很多其他问题。

谢谢,-史蒂夫

0 投票
1 回答
60 浏览

collections - SubSonic2.2 Add() 不工作

我的数据库、客户、联系人中有 2 个表。CusID 是联系人表中的外键。我尝试了以下

客户和联系人类是用 SubSonic2.2 生成的。联系人未保存在数据库中。

0 投票
2 回答
178 浏览

subsonic - Subsonic 2.2 不更新 V 类中的 sql 更改

SubSonic 的新手,通过使用 SubSonic 2.2.1 的项目继承了它VFeedback.cs 没有,我错过了什么吗?

0 投票
3 回答
1059 浏览

.net - 使用 SubSonic 和 sqlite 插入主键值 - 问题因为 SubSonic 认为列是 AutoIncrement 或不是

我正在使用 SubSonic 2.2 和 sqlite,在处理具有非 AUTOINCREMENT 的 INTEGER PRIMARY KEY 列的表时遇到了问题。根据常见问题解答

如果您将表的一列声明为 INTEGER PRIMARY KEY,那么每当您在表的该列中插入 NULL 时,NULL 都会自动转换为一个整数,该整数比该列在所有其他行中的最大值大一在表中,如果表为空,则为 1。

所以 sqlite 认为这些列有时会自动递增(即仅在提供 NULL 值时)。问题是 SubSonic 认为它们总是自动递增的。

在我的应用程序中,我的 ID 值是从远程数据库生成的,所以我不想在 sqlite 中自动生成它们。这应该没问题:我将在此表中创建记录时简单地提供值。但是,当我使用 SubSonic 的 sonic.exe 自动生成我的 DAL 时,主键列设置为 AutoIncrement = true。这似乎意味着我无法设置 ID 列 - subsonic 的 ActiveHelper.GetInsertCommand() 忽略它,因为它认为它是自动生成的。

它确定是否为自动增量的行在 SubSonic.SQLiteDataProvider.GetTableSchema() 中:

我想解决方案是

  • 不要将 INTEGER PRIMARY KEY 列用于在其他地方生成的键,或者

  • 修改模板,使这些类型的列不设置为 AutoIncrement = true。这意味着 SubSonic 永远不会将它们视为自动增量,因此我需要小心我以后不会期望获得自动生成的值。不幸的是,我认为在模板中无法轻松确定该列是否真的是 AUTOINCREMENT,所以也许我不得不做一些难看的硬编码......

还有其他想法或建议吗?

0 投票
3 回答
1511 浏览

.net - 在单线程上使用事务时,sqlite 和 SubSonic 的锁定问题

尝试使用带有 SubSonic 和 SQLite 的事务时,我遇到了锁定异常。我从一个线程中使用它,并且没有其他进程访问我的数据库,所以我真的没想到会出现任何此类问题。

如果我在下面编写这样的代码,我会在循环内第二次调用 Save() 时遇到异常 - 所以第三次调用 Save() 。

如果我有上面的 using() 语句,或者如果我有,using (TransactionScope ts = new TransactionScope())那么我会收到一条System.Data.SQLite.SQLiteExceptionwith 消息

数据库文件被锁定

数据库被锁定

堆栈跟踪是:

如果我将 using 语句以相反的方式嵌套,SharedDbConnectionScope 在外部,那么我会收到一条TransactionException 带有消息“操作对事务状态无效”。堆栈跟踪是:

内部异常是“事务超时”

我生成的 DAL 类中没有任何自定义代码,或者我能想到的任何其他聪明的东西都会导致这种情况。

其他人遇到过这样的交易问题,或者有人可以建议我从哪里开始寻找问题?

谢谢!

更新:我注意到版本 1.0.61-65(例如此处)的发行说明中提到了与事务相关的内容,因此更新 SubSonic 以使用最新版本的 .Net 数据提供程序可能会解决其中一些问题。 .

0 投票
2 回答
209 浏览

.net - 为什么 SubSonic 2.0 使用 System.Data.SQLite 版本 1.0.60.0?

任何人都知道为什么 Subsonic 2.2 使用 System.Data.SQLite 版本 1.0.60.0 而不是最新版本 1.0.65.0?也就是说,仅仅是因为它是在发布的时候,还是因为新版本中有任何不适用于 SubSonic 的东西?

其他人都使用什么 - 您是否只是使用最新的 System.Data.SQLite 从 SubSonic 的最新分支重新编译?

0 投票
1 回答
239 浏览

vb.net - 从 System.Int32 到 System.Byte[] 的亚音速无效转换

Subsonic 2.2 抛出错误

当我执行以下操作时

“模板”是一个 SubSonic 对象,其“内容”字段的类型为 Byte()

为什么是这样

0 投票
1 回答
187 浏览

lazy-loading - SubSonic 2.2 支持延迟加载

SubSonic 2.2 是否支持延迟加载?我可以延迟加载对象的属性吗?如果是,我在哪里可以找到这方面的信息?

0 投票
1 回答
145 浏览

subsonic - Subsonic 2.2、SQLite 和迁移例外

我正在玩迁移并创建了一个简单的迁移,例如

执行 sonic.exe migrate 后,我得到以下输出:

有什么提示吗?