Archive

Archive for the ‘未分類’ Category

HoloLens日本でも発売

カテゴリー:未分類

VS2015 Image Libraryのサイズがおもったよりも大きかった

次期Visual StudioのRCがでているのに、今更ながら2015のImage Libraryが欲しくなってダウンロードセンターに行ったら、、、2.9GBって、、、

image

Cドライブを取るか、Image Libraryをとるか、、、

image

カテゴリー:未分類

Visual Studio 2015の共有プロジェクト

Visual Basic 14 における強化点トップ 14で紹介されている中で、共有プロジェクトというキーワードが目につきました。これ、かなり嬉しいかも。

カテゴリー:未分類

ODAC 12c Relase 3がリリース。Nuget版ODP.NETはもう少し後

Oracle Open World 2014で発表になった機能を実装し、ODAC12c Relase 3が正式リリースされたようです。ただし、このリリースと同時期に提供予定だったNugetの提供はもう少し後になるようです。

関連リソース

32-bit Oracle Data Access Components (ODAC) with Oracle Developer Tools for Visual Studio

http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

Oracle Database Data Access Components Documentation 12c Release 3 (12.1.0.2.1)

http://docs.oracle.com/cd/E56485_01/index.htm

既存のODT.NETのVisual Studioごとの共存が可能に?

インストールの途中にこのODT.NET(Visual Studioの拡張)をインストール済みのどのVisual Studioに適用するかという選択と、ODP.NETをマシンワイドレベルで構成するかという選択が可能になっていました。これまでのODT.NETは単一バージョンのみサポートされていましたが、今回のバージョンからはVisual Studioのバージョンごとに複数バージョンのODT.NETのインストールが可能になっているようです。

image

左はVisual Studio 2010+ODTwithODAC112012、右はVisual Studio 2013+ODTwithODAC121021

ODT.NETをマシンワイドレベルで構成しない場合、下記のダイアログの説明の通り、machine.configへの登録やGACへの登録が行われないのでアプリケーションで新しいバージョンのODP.NETを利用する場合web.configやapp.configへプロバイダの登録が必要になります(直にDLLを参照する場合はなくても動く)。

image

インストール後にmachine.configのsystem.dataセクションをみると、Oracle Data Provider for .NETのプロバイダー設定が以前のまま保持されていることを確認できます。既存のアプリケーションは以前のバージョンで開発したい場合などに便利ですね。

<system.data>
  <DbProviderFactories>
    <add name="Oracle Data Provider for .NET"
         invariant="Oracle.DataAccess.Client"
         description="Oracle Data Provider for .NET"
         type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.112.1.2, Culture=neutral, PublicKeyToken=89b483f429c47342" />

    … 略 …
  </DbProviderFactories>
</system.data>

直にDLLを参照するようなアプリケーションを作成する場合は、参照先に注意

マシンワイドレベルで構成しない場合、たしかに既存アプリケーションの参照は以前のものを利用しているようですが、Visual Studioのアセンブリの参照ダイアログからOracle.DataAccess.Clientを選択しようとすると、新しいバージョンしか出てこないので、以前のアセンブリを参照したい場合は参照ボタンからじかにDLLを選択する必要がありそうです。間違って新しいバージョンを参照してアプリを作ってしまうと実行環境で動かないとかいうことも…

image

#これでやっとスキーマ比較を自分の普段使っているPCでも使えるようになった。

カテゴリー:Oracle, Visual Studio, 未分類 タグ: ,

あれ??CodeFirstで照合順序はどこで指定するの???

SQL Server Compact 4.0+コードファーストを採用しているプロジェクトがあるんだけれど、検索結果が予想したものにならないんだけれどと相談を受けました。

とりあえずこんなコードがあるとして

Using context = New LocalDbContext()
    context.マスター.Add(New マスター With {.Name = "かきくけこ"})
    context.マスター.Add(New マスター With {.Name = "ほげあほげ"})
    context.マスター.Add(New マスター With {.Name = "ほげアほげ"})
    context.マスター.Add(New マスター With {.Name = "ほげアほげ"})
    context.マスター.Add(New マスター With {.Name = "あいうえお"})
    context.マスター.Add(New マスター With {.Name = "いうえおあ"})
    context.マスター.Add(New マスター With {.Name = "さしすせそ"})
    context.マスター.Add(New マスター With {.Name = "a"})
    context.マスター.Add(New マスター With {.Name = "A"})
    context.マスター.Add(New マスター With {.Name = "ほげAほげ"})
    context.マスター.Add(New マスター With {.Name = "ほげAあほげ"})
    context.SaveChanges()
End Using

Using context = New LocalDbContext()
    Console.WriteLine("■あが含まれるもの")
    For Each item In context.マスター.Where(Function(n) n.Name.Contains("あ"))
        Console.WriteLine(item.Id & ":" & item.Name)
    Next

    Console.WriteLine("■aが含まれるもの")
    For Each item In context.マスター.Where(Function(n) n.Name.Contains("a"))
        Console.WriteLine(item.Id & ":" & item.Name)
    Next
End Using

実行するとこうなるらしい。

image

みごとに大文字・小文字、半角・全角、かな・カタカナが区別されずに出ちゃっていますね。照合順序が問題なのは分かるんですけれどCodeFirstの場合、照合順序ってどうやって指定するんでしょう。。。

サポートされる照合順序 (SQL Server Compact)をみると、サーポートされている照合順序はJapanese_CI_ASとJapanese_CS_ASだけみたい。あれ?かなとカタカナは?半角と全角は??

嫌な予感がしつつも、とりあえず照合順序の使用 (SQL Server Compact)をみると、接続文字列に Case Sesitiveを指定すると大文字と小文字は区別してくれるみたいなので、まずはこっちを確認してみます。appConfigに接続文字列を追加して実行してあげます。

<connectionStrings>
  <add name="LocalDbContext"
       connectionString="Data Source=|DataDirectory|LocalDb.sdf;Case Sensitive=True"
       providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>  <entityFramework>

image

確かに大文字・小文字と英字の半角・全角は区別されたようですが、日本語はかな・カタカナ、半角・全角は区別されずに出てきちゃっていますね。Kanji SensitiveとかWide Sensitiveとか無いんでしょうか。。。

とりあえず今回は件数が少ないので.NET側でフィルターしようかと思います。これほんとにこれしかやり方ないんでしょうか。。。

Using context = New LocalDbContext()
    Dim tmp = context.マスター.ToList()
    Console.WriteLine("■あが含まれるもの")
    For Each item In tmp.Where(Function(n) n.Name.Contains("ア"))
        Console.WriteLine(item.Id & ":" & item.Name)
    Next

    Console.WriteLine("■aが含まれるもの")
    For Each item In tmp.Where(Function(n) n.Name.Contains("a"))
        Console.WriteLine(item.Id & ":" & item.Name)
    Next
End Using

カテゴリー:未分類

node.js + Visual Studio

Live Writerの下書きフォルダーから発掘されたので投稿しておきます。

何かと話題のnode.jsですがここに来てちょっと周りで話題になっているので、開発のさわりだけ調査したメモです。

開発環境を作る

Node is Tools for Visual Studioってのが出たらしい(まだBeta2だけれど)ので、ここのInstallationを参考に入れてみます。

今回導入するNode Tools for Visual Studio のデモンストレーションビデオがYouTubeに有りました。ビデオは1.0Alpha時点のものなので、Beta2とはちょこちょこ違うところが有りますが、大まかに雰囲気が伝わります。⇒ overview – Node Tools for Visual Studio 1.0 Aplpha

1.Node.jsのランタイムをインストール

http://nodejs.org/に行ってINSTALLボタンからダウンロードしてインストールします。

2.Visual Studio 2012 or 2013のインストール

アドインとして動作するのでVisual StudioはPro以上。まぁ入ってますよね。VS 2010は残念。

あれ?InstallationのページにVisual Studio Express 2013 for Webは対象となっていますね。試していないけれど使えるらしいです。

3.Node is Tools for Visual Studioのインストール

https://nodejstools.codeplex.com/releases/view/119433で、2012または2013用のmsiをダウンロードしてインストールします。

4.インストール後の確認

表示→その他のウインドウ→Node.js Interractive Windowから、Visual StudioのウインドウとしてNode.jsのコンソールを表示して実行できます。インタラクティブウインドウでも関数を定義したり、インテリセンスが表示されているのが確認できますね。

image  image

プロジェクト(ソリューション)を作る

インストールが完了するとNode.js用のプロジェクトテンプレートが追加されます。

まずは、Webアプリケーション用のテンプレートから新しいプロジェクトを作成します。

image image

プロジェクトが作成されたらとりあえず実行してみましょう。Webサーバーになるプログラムがコマンドプロンプトで起動されWebブラウザーからそのURLにアクセスした結果が表示されます。

image

パッケージを追加でインストールする(Proxy環境下は設定が必要)

ソリューションエクスプローラーからは、npmを使って新しい機能をインストールすることができます。

image image

パッケージのインストールに成功すると、ソリューションエクスプローラーに追加したパッケージが表示されます。パッケージのプロパティーを確認するとrequireでライブラリーをロードする場合のパッケージ名なども確認することができます。

image

Proxy環境下ではパッケージ自体は見つかるんだけれど、Install Packageすると失敗するみたい。って場合は、ホームディレクトリー(%USERPROFILE%)にnmpの設定ファイルを用意してあげます。エクスプローラーからだとファイル名を入力しろとか言われるので、コマンドプロンプトからnotepad .npmrcとかで作ってあげましょう。

%USERPROFILE%\.npmrc

proxy = http://proxy.example.com:8080

インストールが完了すると、ソリューションエクスプローラーに組み込んだパッケージとそのバージョンが表示されます。

とりあえず、まずはここまで。

カテゴリー:未分類

Windows 8 でvShere Client 5以前をインストールする。

ESXiのサーバーに接続しようとしたら、接続先がESXの5.0だったので対象バージョンをインストールしろと迫られた。

ダウンロードしてインストールを始めたらこんなダイアログが。。。いや、Windows 8ですが。。。

image

インストーラーの互換性タブで、互換性モードをWindows XP SP2以降 Windows 7の間に設定してあげましょう。

image

カテゴリー:未分類