問題タブ [clr]
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.
wcf - SQL CLRでWCFのさまざまなエンドポイントを読み込むにはどうすればよいですか?
CLRを使用してSQL2005DBにいくつかの新しいWCF呼び出しを展開しています。テストでは、接続するエンドポイントをコードにハードコーディングし、テストサーバーにデプロイしました。これを本番環境にデプロイする場合は、さまざまなSQL DBにデプロイし、さまざまなエンドポイントを使用して接続します(同じサービスがさまざまなサーバーで実行されます)。このようなことはどのように行うことができますか?dllをSQLにデプロイするために参照できる構成ファイルはありますか?
.net - どのような CLR/.NET バイトコード ツールが存在しますか?
私は、JVM バイトコード (ASM、cglib、jad など) を操作、生成、逆コンパイルするための Java ツールについてよく知っています。CLR バイトコード用の同様のツールはありますか? 人々は CLR のバイトコード操作を行いますか?
sql - Visual Studio を使用せずにマネージ ストアド プロシージャを展開するにはどうすればよいですか?
私が読んだすべてのことは、マネージストアドプロシージャを作成するときに、Visual Studio で右クリックしてデプロイを選択することを示しています。これで問題なく動作しますが、Visual Studio の外部のさまざまな場所に展開したい場合はどうすればよいでしょうか? プロジェクトがSQLで構築したdllでアセンブリを作成しようとしましたが、アセンブリを追加しましたが、アセンブリからプロシージャを作成しませんでした。Visual Studio を使用せずに、SQL で直接これを行う方法を見つけた人はいますか?
c - .NET 開発者は、低レベルの露出のために C の学習に「本当に」時間を費やすべきでしょうか?
Joel Spolsky と Jeff Atwood がポッドキャストで、業界や配信プラットフォームに関係なく、プログラマーが C を学ぶべきかどうかについて意見の相違を始めたとき、開発者コミュニティ内で非常に爆発的な議論が巻き起こりました。私は、多くのプログラマーブロガーから、この問題についての彼らの意見を読んでいます。双方の主張には確かに重みがありますが、私が見つけられなかったのは、.NET Framework のみに焦点を当てた開発者の観点から独自の角度から見た視点です。ほぼ全員が、一般的なプログラマーの観点からコメントしていました。
私は何を手に入れようとしていますか?このような高レベルの開発者が費やす時間のほとんどは、ビジネス/ドメインの学習に費やされ、それらのドメイン要件を達成するためのテクノロジを学習するために必要なすべての時間に費やされるという Jeff Atwood の意見を思い出してください。私の実務経験では、多くの人の仕事生活を非常に正確に説明しています。.NET 開発者が「課外」学習の時間を分岐できると仮定すると、それは Cである必要がありますか?
記録として、私は学校で C を学んでおり、支持者が何を理由にしているのかを完全に理解し、評価することができます。しかし、よく考えてみると、個人的には、.NET 開発者は C に直接飛び込むべきではないと感じています。なぜなら、より多くの開発者に時間をかけて習得してもらいたいのは、MSILとCLRです。
たぶん、私は異常な同僚の集まりに行き詰まっているのかもしれませんが、私にはわかりませんが、多くの人は、JIT が導入されて生のマシンになる前に、C# または VB コードが最初に IL でコンパイルされることを意識していないようです。コード。ほとんどの人は IL を知らず、作成したコードを CLR がどのように正確に処理するかに関心がありません。Jeffrey Richter のCLR を C# 経由で読んだことは、私にとって非常に多くの分野で衝撃的でした。同僚が「レベルが低すぎる」と却下したにもかかわらず、読んでよかったです。私は IL の専門家ではありませんが、基本的な知識があれば、IL のスタック動作にすでに精通していたので、彼のテキストに従うのがより簡単であることに気付きました。特定のコードを記述したときに IL がどのようになるかを確認するために、アセンブリを逆アセンブルしていることに気づきました。
CLR と MSIL を学習するのは、それが自分の直下の層であることを知っているからです。自分の作業のレイヤーを実行できるようにするレイヤー。C、実際にはさらに下にあります。私たちの「現実」に近いのは、CLR と MSIL です。そういうわけで、私は他の人にそれらを試してみることをお勧めします. それとも、あなたのチームはすでに MSIL に精通していますか?
.net - SQL Server ストアド プロシージャまたは関数から .NET アセンブリを参照する
SQL Server ストアド プロシージャまたは関数から .NET アセンブリを参照したり、SQL Server から clr コードにアクセスしたりすることはできますか?
編集このソリューションはやや一般的である必要がありますが、SQL 2005+を期待していると確信しています
.net - バージョン 2 の CLR インストールでバージョン 3 の .Net バイナリを実行できますか?
.Net 3 を使用して out プロジェクトの次のバージョンを作成することを検討していますが、エンド ユーザーに .net フレームワーク バージョン 3 のインストールを強制することに打撃を与えることができるかどうか疑問に思っています。
c# - キャストと変換は同じですか?
Jesse Liberty の Learning C# ブックの中で、彼は「あるタイプのオブジェクトを別のタイプのオブジェクトに変換できます。これをキャストと呼びます」と述べています。
以下のコードから生成された IL を調べると、キャストされた割り当てが変換された割り当てと同じことをしていないことがはっきりとわかります。前者では、ボックス化/ボックス化解除が発生していることがわかります。後者では、convert メソッドの呼び出しを確認できます。
結局、それはばかげた意味の違いにすぎないことはわかっていますが、変換するための別の単語をキャストしているだけです。意地悪をするつもりはありませんが、これに関する誰かの直感には興味がありません。意見はここでは考慮しません。キャストと変換が同じものであるかどうかを確認または否定する決定的な参照を誰かが指摘できますか?
ありがとうございました
rp
明示的/暗黙的に関するマットのコメントの後に追加されたメモ:
暗黙的/明示的な違いはないと思います。私が投稿したコードでは、どちらの場合も変更が明示的です。暗黙的な変換は、int に short を割り当てるときに発生するものです。
Sklivvz へのメモ:
私は、ジェシー・リバティの(それ以外の場合は、通常は明快で明快な)言葉遣いが緩いという私の疑いが正しいことを確認したかったのです。ジェシー・リバティは言葉遣いが少し緩いなと思いました。キャストはオブジェクト階層でルーティングされることを理解しています。つまり、整数から文字列にキャストすることはできませんが、System.Exception から派生したカスタム例外から System.Exception にキャストすることはできます。
ただし、int から文字列にキャストしようとすると、値を「変換」できなかったとコンパイラが通知するのは興味深いことです。思ったよりもジェシーが正解かも!
clr - .Net 4.0 には新しい CLR が含まれるか、バージョン 2.0 を維持しますか?
.Net 4.0 は新しいバージョンの CLR (v2.1、3.0) を使用しますか、それとも既存の v2.0 をそのまま使用しますか?
補足: CLR v2.0 を維持し、DLR v1.0 を追加する可能性はありますか?
更新: これは答えられない投機的な質問のように見えるかもしれませんが、VS チームは VS10 と .Net 4.0 に関する情報をますます公開しているように見えるため、すぐにそうでなくなる可能性があります。(ここで入手できる情報 -> http://msdn.microsoft.com/en-us/vstudio/products/cc948977.aspx )
.net - CLR 上で動作する CLR はありますか?
CLI (共通言語インフラストラクチャ) を使用して (たとえば、.NET 自体を使用して) 実装された .NET 互換の CLR があるかどうか、または少なくともそれを構築するのに役立つリソースがあるかどうか疑問に思っていました。
基本的には、アセンブリを MemoryStreams として読み込み、バイトコードを解析し、型を構築し、命令を実行する .NET プログラムのようなものです。オプションで、Reflection.Emit を使用して標準 IL に JIT コンパイルすることもできます。
元の CLR で実行される .NET 言語をコンパイルしたくありません。.NET 言語(通常のアンマネージ C++ や C ではない)で記述され、 CILを実行する CLR が必要です。正しく行われれば、それ自体を実行できるはずです。
この種のものに Mono.Cecil を使用することについて何か考えはありますか?
vb.net - VB.Net - 暗黙の型変換とカスタムの等価性をサポートする方法
修正済み: 下部の注を参照してください
暗黙的な型変換とカスタム等価演算子の 2 つの機能をサポートするジェネリック クラスを実装しています。それができるなら、それは IN 等価性もサポートします。
私が抱えている問題は、#2の暗黙的な変換をサポートしている場合、最も具体的な変換がないことについて不平を言うため、等値演算子を機能させることができないことです。
私が得るエラーはこれです(簡潔にするために少し簡略化されています):
これを実装する最良の方法は何ですか。同様に重要なことですが、何を除外する必要がありますか? 次の変換を実装しました
私の拡大演算子では、いくつかのリフレクションを行います。そのため、左側の文字列との比較または割り当てを行うときに、DOWN から文字列への暗黙的な変換を実行できるようにしたかったのです。
修正(編集)
何が起こっているのか理解できなかったので、私は自分が実装したものをやり過ぎました。基本型 (つまり、string/double/guid) 間の比較は、拡張 ctype(...) as String (または Guid など) 演算子を介して行われます。最後に、これらの関数を実装しただけで、クラスから基本型インスタンスへの割り当てに加えて、すべてのテストケースが引き続き通過します
コメントはCスタイルですが、コードはvb.netです
もちろん、クラスはそれよりも少し複雑ですが、必要なものはすべて揃っています:)