ServiceStack OrmLite (Oracle データベースを使用) を試しています。しかし、ハングするだけdb.Select
です..例外もスローしていません..ロードするデータが多すぎるかのようにハングします。
PC に最新のオラクル インスタント クライアント バージョン 12.1 をインストールしました。
これは私のOrmLiteコードです:
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args) {
string DbConnection =
"SERVER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=9530))(CONNECT_DATA=(SERVICE_NAME=MYSID)));uid=myusername;pwd=mypassword";
var dbFactory = new OrmLiteConnectionFactory(
DbConnection, false, OracleDialect.Provider);
using (var db = dbFactory.Open()) {
var res = db.Select<Einduk>().Take(10); //<-- it hangs here, no stacktrace whatsoever
foreach (var einduk in res) {
Console.WriteLine(einduk.ToString());
}
}
Console.ReadLine();
}
}
}
そして、これは私のモデルクラスです:
namespace ConsoleApplication1
{
public class Einduk
{
[PrimaryKey]
public string Akaun { get; set; }
public string Jenis { get; set; }
public string Bakaun { get; set; }
public string Oldac { get; set; }
public string Plgid { get; set; }
public string Pnama { get; set; }
public string Almat { get; set; }
public string Kslah { get; set; }
public DateTime? Trikh { get; set; }
public decimal? Amaun { get; set; }
public override string ToString() {
return string.Format("Jenis: {0}, Akaun: {1}, Bakaun: {2}, Oldac: {3}, Plgid: {4}, Pnama: {5}, Almat: {6}, Kslah: {7}, Trikh: {8}, Amaun: {9}", Jenis, Akaun, Bakaun, Oldac, Plgid, Pnama, Almat, Kslah, Trikh, Amaun);
}
}
}
これは私のテーブルです。テーブルには主キーがないことに注意してください。しかし、私のモデルでは、Akaun
それが一意であることを知っているので、主キーとして設定しました。これにより問題が発生しますか?
CREATE TABLE "EINDUK"
(
"JENIS" CHAR(1 BYTE),
"AKAUN" VARCHAR2(40 BYTE),
"BAKAUN" VARCHAR2(50 BYTE),
"OLDAC" VARCHAR2(20 BYTE),
"PLGID" VARCHAR2(15 BYTE),
"PNAMA" VARCHAR2(100 BYTE),
"ALMAT" VARCHAR2(282 BYTE),
"KSLAH" VARCHAR2(508 BYTE),
"TRIKH" DATE,
"AMAUN" NUMBER
)