問題タブ [datacontext]
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.
wpf - WPF で DataContext をユーザー コントロールに渡す
ContentControl のコンテナーとして機能するユーザー コントロールがあります。
ユーザー コントロール コンテナーには、ContentControl に割り当てられた動的に追加されたユーザー コントロール内のコントロールを更新するために使用するリストビュー コントロールがあります。
リストビュー コントロールをスクロールすると、ContentControl に割り当てられた UC のテキスト ボックスが更新されます。
すべてが 1 つのページにある場合は問題ありませんが、動的に追加された UC に ListView をデータコンテキストとして渡すのに苦労しています。
これはどのように行うことができますか?
XAML で
コードビハインドで...
「LocationView」を PlaceHolder.Content に追加するときは、データコンテキストとして「lstIncidents」を渡す必要があるため、ListView がナビゲートされると「LocationView」のテキストボックスが更新されます。
c# - 例外がスローされても HttpContext.Current は破棄されますか?
私が尋ねる理由は、特定の ORM テクノロジに関連する依存関係をリポジトリに注入する必要なく、リポジトリが透過的にアクセスできるように、コレクションがなどのオブジェクトHttpContext.Current.Items
を配置するのに適しているように思われるためです。これにより、リポジトリは、実際に変更を永続化するという追加の責任を負うか、引き受けるかを決定できます。IDisposable
DataContext
UnitOfWork
例えば:
ページ:
リポジトリ:
もちろん、null をチェックし、コレクションDataContext
で利用できない場合は取得するために必要な手順を実行します。HttpContext.Current.Items
したがって、上記のコードが与えられた元の質問に戻ります。HttpContext.Current
例外がスローされた場合でも、Items コレクションに含まれるオブジェクトと一緒に破棄されますか?
c# - LinqToSqlの変更をどのようにクリアしますか?
WPFアプリに、ビューモデルのオブジェクトのリストにデータバインドされたコンボボックスがあります。ユーザーが選択したオブジェクトに変更を加えてから、保存する前に別のアイテムを選択した場合、行った変更をクリアする必要があります。
dataContext.GetChangeSet()。Updates.Clear()を使用できると思いましたが、何らかの理由でコレクションは読み取り専用です。
dataContext.Refreshも使用しようとしましたが、オブジェクトがデータベースに存在しないため、これも機能しません。SPから手動で作成しました。
助けてください。ありがとう。
c# - LinqToSqlで継承されたサブクラスにカスタムの挿入/更新/削除メソッドをどのようにセットアップしますか?
LinqToSql で 2 つのサブクラスを持つベース クラスを作成しました。サブクラスのカスタム更新メソッドのそれぞれに異なるストアド プロシージャを割り当てる必要があります。これで問題ありませんが、「無効なオブジェクト名 'xxx'」というエラーが表示されます。
例えば
...Class2はClass1を継承し、Class2には独自のカスタムINSERTメソッドがあります(これを実行したいです)。
ありがとう。
解決策:ブライアンの答えは、私が求めていたものを私に与えてくれました。デザイナーの背後にあるクラスに追加したコードは次のとおりです。
InsertSP および InsertSP2 ストアド プロシージャは、sp を手動で呼び出す手間を省くために、デザイナーを使用してドラッグされました。
これについてはブライアンのすべての功績
c# - 自動インクリメントを使用してテーブルで複数の挿入が呼び出された場合、Linq to SQL Data コンテキストはコミットされません
一度に 2 つの挿入物を送信しようとすると問題が発生します。テーブルには、自動インクリメントの主キーがあります。データベースがこれを割り当てることができるように、設定されたコメント オブジェクトには ID 値が設定されていません。
私のコードは、すぐに送信すると単一の挿入に対して機能しますが、複数の InsertOnSubmit コマンドを実行しようとすると、コードが try および catch ブロック内にある場合でもエラーや例外が返されないように見えます。他の誰かがこの問題を抱えていましたか、それとも私が見るべき方向を知っていますか?
例 1 (これはデータベースにコミットしません)
例 2 (これは正常に動作します)
linq-to-sql - LINQ to SQL: 文字列ファイル名を使用して実行時に DataContext を作成する
FileInfo を使用すると、DataContext .dbml ファイルのファイル名を見つけることができます。
私が宣言した場合:
Dim DataModel = New AttributeMappingSource().GetModel(GetType( NorthwindDataContext ))
With System.Data.LINQ.Mapping I can find the name of all Tables and furthermore their Columns and relationships.
All this thanks to the excellent post from Jomo Fisher here: LINQ to SQL Trick: Get all Table [and Column] Names: http://blogs.msdn.com/jomo_fisher/archive/2007/07/30/linq-to-sql-trick-get-all-table-names.aspx
But how can I achieve same result without explicitly knowing the DataContext Object? I mean how can i "replace" this:
With:
c# - WPFでのバインディングの更新順序を定義するものは何ですか?
いくつかのバインディングを使用するWPF/C#コードがあります。
- コンボボックスは、アカウントを選択するために使用されます
- 2番目のコンボボックスのitemssourceプロパティは、選択したアカウントにバインドされます。この2番目のコンボボックスは、連絡先を選択するために使用されます
- グリッドのitemssourceプロパティは、選択したアカウントにバインドされます。このグリッドには、選択したアカウントの請求書が含まれています。
- 連絡先コンボボックスの親DataContextは、選択した請求書にバインドされます。
- 連絡先コンボボックスのSelectedItemは、データコンテキストの請求書のInvoiceContactプロパティにバインドされます。
ただし、バインディングは希望する順序で更新されません。別のアカウントを選択すると、ContactコンボボックスのItemsSourceプロパティが最初に変更され、次にSelectedItemが明らかに変更されます。これにより、InvoiceContactが変更され、次に、選択されたInvoiceが変更されます...
選択された請求書を台無しにすることを言う必要はありません。
バインディングの更新に使用される順序を制御するにはどうすればよいですか?
ありがとう
アレックス
wpf - WPFのウィンドウデータコンテキストでの並べ替え
これに関連する別の質問。
私はMainWindowのを持っていList<SortableObjects>
ます。DataContext
そのリストを使用して aListBox
と a を設定しComboBox
ます。アイテムを並べ替えると、ComboBox
と の両方がListView
正常に更新されます。しかし今、ComboBox
を とは異なる方法でソートする必要がありListView
ます。IE オブジェクトが Person の場合、 ではComboBox
LastName で並べ替える必要がありますが、ListView
では誕生日で並べ替える必要があります。どうすればこれを達成できますか?
ありがとう!
binding - コンボボックスを別の DataContext にバインドする
コンボボックスの項目は、バインディングが作成される 1 つのフィールドである 1 つのテーブルから取得されます。選択したアイテムを別のテーブルにデータベースに保存した後、選択したアイテムを保存したアイテムにしたいと考えています。しかし、選択したアイテムは失われます。だから、私の質問は次のとおりです。コンボボックスを2つのDataContextまたは別のソリューションにバインドできますか?.
より明確な例を挙げると、コンボボックス項目はデータソースから取得された定義済みの値であり、選択された値は保存され、インターフェイスに表示される必要があります。したがって、私が見ることができるのは、事前定義された値へのバインディングと、選択したアイテムへの接続を確立するために保存された値へのバインディングである必要があります。
なにか提案を?
silverlight - StackPanel が更新されない
新しいアイテムが追加されたときに、直接バインドされた ObservableCollection が StackPanel を更新しないという問題があります。初期アイテムはすべて正しく表示されます。後で追加されたアイテムのみが表示されません。XAML:
私は Prism MVVM を使用しているので、プロパティを持つ ViewModel にバインドしています。
最初の項目が正しく表示されていることからわかるように、基本的なコンバーターとバインドは機能しています。表示されないのは、最初のバインド後にコレクションに追加されたアイテムだけです。何か案は?ありがとう、リック