質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

2回答

12817閲覧

今現在のVB.NETのソリューションをC#への最短変換方法

super1234

総合スコア52

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

3クリップ

投稿2017/06/29 00:00

今現在のVB.NETのC#への最新の変換方法のアドバイスを頂きたいです。コード変換のサイトなどはあるのですが、ソリューションじたいを突っ込んでC#のプロジェクトに一発変換するようなサイトもしくはツールを探しています。なければ最短で変換する方法です。

また、もしコード変換サイトなどを利用するとなった場合ですが、ひとつのクラスにつきそのままコードを変換していけばクラス単位では確かにC#に変えれますが、そのクラスの繋がりとなる構成についてはVB.NETとC#は同じと考えてよろしいのでしょうか。よろしくお願いいたします。

[VB.NET]
OS:win7
Microsoft SQL Server 2014
.NET Framework 3.5 or 4.6.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

こんにちは。

精度が高いとは言えないですが、VB.NETのプロジェクトをコンパイルして作成したアセンブリをフリーのデコンパイラ「ILSpy」に読み込ませ、C#にデコンパイルしてSaveすることで一発でプロジェクトをC#に変換できます。

投稿2017/06/29 00:07

tamoto

総合スコア4103

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

super1234

2017/06/29 01:25

その方法を一度試してみます。ありがとうございます。他の方法あれば頂きたいので一応このまま保留質問にさせてください。
super1234

2017/06/29 02:17 編集

すいません。.sln拡張子のものを開いて一発が希望だったのですが、dllやexeをC#にするソフトなのでしょうか。
tamoto

2017/06/29 02:21

そうですね、あくまでデコンパイラなので、プロジェクト単位(アセンブリ単位)での操作になってしまいます。.vbprojとそのソースファイルを.csprojにするようなイメージです。
super1234

2017/06/29 02:33

sln以外にフォルダといいますかプロジェクトが3つありまして、クライアント用とウェブサーバー用とCommonです。それらのビルド後のbinフォルダの中にあるDebugフォルダの中にdllとexeがあったのでそちらを変換して、それ以外にxmlやpdb、dll.config、exe.configがあったのですが、それらは放置であとはC#プロジェクトとして開けるということで認識として間違えないでしょうか。重ねてすいません。
tamoto

2017/06/29 02:38

それであっています。3つのプロジェクトをそれぞれデコンパイルし、新たにslnに紐つければ良いです。 他のファイルについては、本当に必要なファイルはbinフォルダ内の.exeまたは.dllだけですが、可能であればそのbin以下のディレクトリ構成を維持したままexe/dllをILSpyに放り込むことをオススメします。場合によっては、xml等の外部情報を読み込んだソースコードが生成される場合があるためです。
super1234

2017/06/29 02:47

申し訳ないです。ソリューションに紐付というのは具体的にどうすればよいのでしょうか。
tamoto

2017/06/29 03:01

Visual Studioであれば、適当なC#のソリューションを作成 -> ILSpyで作成した.csprojが含まれる3つのC#ソースコードディレクトリをソリューション配下のディレクトリにコピー -> VSのソリューションのメニューから参照の追加で3つのプロジェクトを追加 という感じになると思います。
super1234

2017/06/29 04:02

ありがとうございます。行ってみます。
super1234

2017/06/29 06:25

ソリューションが作れまして既存のbinフォルダを含むserver クライアント commonの3つのフォルダをslnと同階層に置いたのですが、参照決定でてこずっておりましてserverが地球マーク クライアントとcommonがVB四角マークが横についていたものを同様に組み込みたいのですが、外部参照と行えばよろしいのでしょうか。何度も申し訳ないです。
super1234

2017/06/29 23:37

両方のやり方でお二人にベストアンサーをしたいところです。回答ありがとうございました。
guest

0

ベストアンサー

SharpDevelopにC#へのコード変換機能があったかと
VBのソリューションを開いて、C#へ変換できたと思います。

投稿2017/06/29 02:11

YAmaGNZ

総合スコア10222

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

super1234

2017/06/29 02:29

ありがとうございます。そちら試してみます。
super1234

2017/06/29 04:04

こちらの方法でも試しているのですが、最新のバージョンですとtools→projects upgradeでCompilerバージョンとしてMSbuild 4.0しか選択できないのですが、C#のコンパイラなどを別途ダウンロードか拡張などしないといけないのでしょうか。
YAmaGNZ

2017/06/29 05:17

最新とはSharpDevelop 5だと思いますが、これはC# support only!とありますので、出来ないのかもしれません。 私が以前(といってもかなり前ですが)試したのはSharpDevelop 3.2くらいだったと思います。
super1234

2017/06/29 05:36

ありがとうございます。行ってみます。
super1234

2017/06/29 06:43 編集

sharpdevelop5でも4でもC#コンバートがないようで3.5だとCan't read Microsoft Solution file format 12.00.エラーでslnが開けませんでした。
YAmaGNZ

2017/06/29 06:42 編集

SharpDevelop 4.4をインストールして試してみました。 画面右側のProjectsツリーのプロジェクトの部分で右クリック→Convert→From VB.NET to C# で出来ませんかね?
super1234

2017/06/29 06:44

行って頂いたのですね。わざわざすいません。再度行ってみます。ありがとうございます。
super1234

2017/06/29 07:33

無事にコンバートできました。ありがとうございます。.convertというファイルが同階層にできますが、C#のみのものにするにはconvert以外を削除して名前付け保存で、それがC#ソリューションの完成ということなのですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問