問題タブ [subsonic3]
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.
entity-framework - Entity Framework を使用してテーブルからすべてのレコードを一般的に返す方法はありますか
基本的に、私はこのような方法を実装しようとしています。
IQueryAble GetQuery<T>(Entities db)
または拡張方法Entities.GetQuery<T>()
このようにして、このようなことができます
これは SELECT * FROM クエリ式を返し、明らかにそこから、並べ替え、ページ付け、where 式などのための追加の一般的なメソッドを作成できるため、テーブルごとにこれらのメソッドのコードを繰り返す必要がなくなります。SubSonic3 がこれについて非常にうまく機能していることは知っていますが、私が取り組んでいる EntityFramework プロジェクトの機能の一部を複製しようとしていました。私がEFで目にするのはCreateQueryとObjectQueryだけですが、どちらもテーブル名を知る必要があるクエリ文字列を渡す必要があります。
subsonic - Subsonic 3 ActiveRecordは多対多の関係を処理しますか?
ActiveRecordテンプレートファイルは、多対多の関係を処理するクラスを作成しますか?
asp.net - ASP.Net ロール テーブルへの外部キーの作成
Pages テーブルがあり、PageId、ASP.Net Membership Roles テーブルと Pages テーブルにリンクする RoleID を持つ PagesRoles テーブルがあります。
現在ログインしているユーザーの役割にリンクするページを何とか返したいと思っています。
ユーザーは、複数のロールに存在する場合があります。ページは、それに対して複数のロールを持つことができます。
IQueryable の外部キー プロパティを持つ Page クラスがあります。PageRoles には、IQueryable to ASPNet Roles テーブル (IQueryable) と IQueryable があります。
ありがとう
編集:
Adam の回答を使用して、現在ログインしているユーザーのロールの 1 つと一致するロールが割り当てられているすべてのページを取得すると、問題が追加されます。PageID 外部キーと CategoryID を持つ Menu テーブルがあります。
CategoryID が 4 のすべてのメニュー項目を返したいと思います。PageID を持つ項目については、ユーザーがロールに基づいてそのページを表示できるようにする必要があります。アダムのクエリはそれを行うと思います。したがって、必要なのはUNIONであり、PageIDがnullでCategoryIDが4のすべてのメニュー項目を返し、CategoryIDが4のすべてのメニュー項目を返し、現在のユーザーの役割がそのASPNetRoleにあるPage-> PageRole-> ASPNetRoleに参加します結果。
asp.net-mvc - サブソニック3合体可能?
私はそのようなスキーマを持っています。Menu->Pages->PageRoles->ASPNetRoles
メニューには CategoryID があります。
CategoryID が 6 のすべてのメニュー項目を返したいと考えています。
一部のメニュー項目には、PageID の foreigh キーがあります。ページは、それらに対して 1 つ以上の役割を持つことができます。現在ログインしているユーザーの役割を確認し、それらがテーブルを結合して結果に含まれていることを確認できます。
CategoryID が 6 のすべてのメニュー アイテムを返したいと思います。PageID を持つものについては、ユーザー ロールがページに割り当てられたロールに含まれている必要があります。
私が考えることができる唯一の方法は、結合を行うことですが、Subsonic でこれを行うと失敗します。以下の作品。
結果を組み合わせるにはどうすればよいですか?
これを行うと失敗します:
編集:
LEFT OUTER JOINS (以下を参照) を介して SQL で結果を取得できますが、これを LINQ/Subsonic に変換すると失敗します。
こんな単純なことでも失敗する
asp.net-mvc - 私の IQueryable 構文は正しいですか?
生成された SQL はクロス結合を行いますが、ID が一致すると内部結合のように機能しますが、C# で結合キーワードを実際に使用してこれを実行するより良い方法はありますか? とにかくプロパティがすべて階層的に関連しているため、プロパティの結合方法を指定する必要がない方法はありますか
アイテムは Page クラスです
PageRoles は Page クラスの IQueryable プロパティです
aspnet_Roles は PageRole クラスの IQueryable プロパティです
編集:
これは、私のクラスの IQueryable プロパティの例です。以下の例は、PageRole クラスからのものです。
activerecord - SubSonic 3 ActiveRecord 移行の定義
SubSonic 3 ActiveRecord を使用して ASP.NET MVC プロジェクトを開始しています。主キー ID を持つテーブル Users を追加し、T4 ファイルを再コンパイルして User クラスを生成しました。
開発を進めながら、いつでもデータベースを再生成/移行できるようにしたいと考えています。データベースにテーブルと関係を作成し、ActiveRecord クラスを再生成し、http://subsonicproject.com/docs/3.0_Migrationsで説明されているように移行を行う必要があるようです。移行を定義する古い 2.x の方法は、もはや利用できないようです。
モデルクラスを変更することにより、データベースではなくコードから開発を推進し、SimpleRepository を使用せずにそれに応じてデータベースを移行する方法はありますか? 生成されたコードをソース コード リポジトリに入れたくありませんが、そうしないとデータベース スキーマが失われます (手動でエクスポートして保存しない限り)。
subsonic - SubSonic3.0のSQLビュー
SubSonic 3.0でSQLビューにアクセスする方法はありますか?コード生成はビューを完全にスキップするようです
subsonic - 亜音速 3 足場
asp.net のスキャフォールディング コントロール (例: < subsonic:QuickTable />) は subsonic 3 でも利用できますか?
activerecord - SubSonic 3 ActiveRecord で生成された警告付きコード
ActiveRecord T4 テンプレートで SubSonic 3 を使用している間、生成されたコードは、CLS 準拠、未使用の項目、および GetHashCode() 実装の欠如に関する多くの警告を示します。
それらを回避するために、次の変更を行いました。
警告を取り除くためのより良い方法はありますか? または、より良い GetHashCode() 実装ですか?
mysql - Subsonic 3、MySQL T4 テンプレート: Structs.tt が失敗する
誰でも助けることができますか?Structs.cs ファイルを生成しようとすると、MySQL プロバイダーから SchemaName が返されないため、プロセスがエラーで失敗します。
" エラー 3 実行中の変換: System.ArgumentNullException: 値を null にすることはできません。パラメーター名: objectToConvert at Microsoft.VisualStudio.TextTemplating.ToStringHelper.ToStringWithCulture(Object objectToConvert) at Microsoft.VisualStudio.TextTemplating3BD02BC645E0D86C85EB7201F039F235.GeneratedTextTransformation.TransformText().... "
これは、Structs.cs で生成されるコードです。
MySQL コネクタ 6.04 および 5.1、および mysql サーバー バージョン 5.067 および 5.1.33 を使用してみましたが、同じ結果が得られました。
これは、会社テーブルのスキーマです。
-- 表「会社」DDL
CREATE TABLE companies
(
ID
int(10) NOT NULL auto_increment, PRIMARY KEY ( ID
) ) ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=latin1;
誰でも助けることができますか?