[解決済み] LINQPad [拡張]メソッド [閉鎖]のお知らせ
質問
どなたか、LINQPadの拡張メソッドとメソッドの完全なリストをお持ちの方はいらっしゃいますか?
.Dump()
SubmitChanges()
解決方法は?
LINQPadは2つの拡張メソッドを定義しています(LINQPad.Extensions内)。
Dump()
と
Disassemble()
.
Dump()
はLINQPadの出力フォーマッタを使って出力ウィンドウに書き込み、見出しを指定できるようにオーバーロードされています。
typeof (int).Assembly.Dump ();
typeof (int).Assembly.Dump ("mscorlib");
また、デフォルトの5レベルを上書きするために、最大再帰深度を指定することができます。
typeof (int).Assembly.Dump (1); // Dump just one level deep
typeof (int).Assembly.Dump (7); // Dump 7 levels deep
typeof (int).Assembly.Dump ("mscorlib", 7); // Dump 7 levels deep with heading
Disassemble() は、任意のメソッドをディスアセンブルして
IL
その出力を文字列で返します。
typeof (Uri).GetMethod ("GetHashCode").Disassemble().Dump();
これら2つの拡張メソッドに加えて、LINQPad.Utilにはいくつかの便利な静的メソッドがあります。これらはオートコンプリートでドキュメント化されており、以下のようなものがあります。
- Cmd - シェルコマンドまたは外部プログラムを実行します
- CreateXhtmlWriter - LINQPadのDump()フォーマッタを使用するテキストライターを作成します。
- SqlOutputWriter - SQL 出力ウィンドウに書き込むテキストライターを返します。
- GetMyQueries , GetSamples - 保存されたクエリー/サンプルを表すオブジェクトのコレクションを返します (例: Edit | Search All)
- ハイライト - ダンプ時に黄色くハイライトされるようにオブジェクトをラップします。
- 水平走行 - 一連のオブジェクトを同じ行にダンプすることができます。
LINQPadはHyperLinqクラスも提供しています。これには2つの目的があります。1つ目は通常のハイパーリンクを表示することです。
new Hyperlinq ("www.linqpad.net").Dump();
new Hyperlinq ("www.linqpad.net", "Web site").Dump();
new Hyperlinq ("mailto:[email protected]", "Email").Dump();
と組み合わせることができます。
Util.HorizontalRun
:
Util.HorizontalRun (true,
"Check out",
new Hyperlinq ("http://stackoverflow.com", "this site"),
"for answers to programming questions.").Dump();
結果
チェックアウト このサイト プログラミングの質問にお答えします。
HyperLinqの第二の目的は、クエリを動的に構築することです。
// Dynamically build simple expression:
new Hyperlinq (QueryLanguage.Expression, "123 * 234").Dump();
// Dynamically build query:
new Hyperlinq (QueryLanguage.Expression, @"from c in Customers
where c.Name.Length > 3
select c.Name", "Click to run!").Dump();
また、LINQPadでは独自の拡張メソッドを書くこともできます。My Queries' に行って、'My Extensions' というクエリをクリックしてください。ここで定義した型やメソッドは、全てのクエリでアクセス可能です。
void Main()
{
"hello".Pascal().Dump();
}
public static class MyExtensions
{
public static string Pascal (this string s)
{
return char.ToLower (s[0]) + s.Substring(1);
}
}
4.46(.02)では 新しいクラスとメソッドが導入されました :
- DumpContainer (クラス)
- OnDemand(拡張メソッド)
- Util.ProgressBar (クラス)
さらに、Hyperlinq クラスが アクション デリゲートは、リンクをクリックしたときに呼び出されるため、単に外部のウェブページにリンクするだけでなく、コード内で反応させることができます。
DumpContainer
は、出力ウィンドウにブロックを追加し、その内容を置き換えることができるクラスです。
NOTE!
を忘れずに。
.Dump()
その
DumpContainer
を適切な場所に配置します。
使用するには
var dc = new DumpContainer();
dc.Content = "Test";
// further down in the code
dc.Content = "Another test";
OnDemand
は拡張メソッドで、パラメータの内容を出力ウィンドウに出力せず、代わりにクリック可能なリンクを追加し、クリックするとそのリンクを
.Dump()
を作成します。これは、時々必要とされるデータ構造で、コストがかかったり、多くのスペースを取る場合に最適です。
NOTE!
を忘れずに。
.Dump()
を呼び出した結果
OnDemand
を適切な場所に配置します。
使用するには
Customers.OnDemand("Customers").Dump(); // description is optional
Util.ProgressBar
は、出力ウィンドウ内にグラフィカルなプログレスバーを表示するクラスで、コードの進行に応じて変化させることができます。
NOTE!
を忘れずに。
.Dump()
を、Util.ProgressBarオブジェクトの適切な場所に配置してください。
使用するには
var pb = new Util.ProgressBar("Analyzing data");
pb.Dump();
for (int index = 0; index <= 100; index++)
{
pb.Percent = index;
Thread.Sleep(100);
}
関連
-
[解決済み】ユーザー設定値を別のユーザー設定値で設定する
-
[解決済み] IDisposable インターフェースの正しい使用法
-
[解決済み] C#の[Flags]Enum属性の意味とは?
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] List<T>をオブジェクトのプロパティでソートする方法
-
[解決済み] Entity FrameworkとLINQ to SQLの比較
-
[解決済み] 既存の静的クラスに拡張メソッドを追加することはできますか?
-
[解決済み】大文字・小文字を区別しない「Contains(string)
-
[解決済み】C#には拡張プロパティがある?
-
[解決済み] Linq拡張メソッドを使用して左外部結合を実行する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】スクリプトクラスが見つからないので、スクリプトコンポーネントを追加できない?
-
[解決済み】バックスラッシュを含むパス文字列のエスケープシーケンスが認識されない件
-
[解決済み】値をNULLにすることはできません。パラメータ名:source
-
[解決済み] 2つのリストを結合する
-
[解決済み] [Solved] .NETでスレッドの終了を待つには?
-
[解決済み】パラメータ付きRedirectToAction
-
[解決済み】ユーザー設定値を別のユーザー設定値で設定する
-
[解決済み】WebResource.axdとは何ですか?
-
[解決済み】Nullableオブジェクトは値を持たなければならない?
-
[解決済み] SecureStringをSystem.Stringに変換する方法は?