NHibernate - 使用动态创建 Table

NHibernate - Working with dynamic created Table

我在项目中使用 Fluent NHibernate。使用 SQL 动态查询创建的某些数据库 table。我执行 sql select 查询如下,但它 return -1.

 var query = $"Select * from {tableName}";
 var obj = Session.CreateSQLQuery(query).ExecuteUpdate();// result is -1

My question is how can I work easily with dynamic created tables in NHibernate - SELECT, INSERT, UPDATE, DELETE?

下面的代码就足够了。

var tableName = "YourTableName";
var query = $"Select * from " + tableName;

您需要使用 .List 方法而不是 .ExecuteUpdate

var query = $"Select * from {tableName}";
var obj = Session.CreateSQLQuery(query).List();

ExecuteUpdate 方法仅适用于 UPDATE/DELETE。如果你需要return某种结果,你需要使用List方法。