Archive

Posts Tagged ‘Visual Studio’

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, 未分類 タグ: ,

VB14で新しく増える構文で個人的に気に入っている構文ベスト3

VB TeamブログでVB14で採用される新しい構文について解説のエントリーが上がっています。
New Language Features in Visual Basic 14 (non-animated)

全体的に今までむず痒かった部分に手が入った感じですね。個人的にベスト3上げるとこの辺りが特に嬉しい!!

1位. 文字列の拡張書式構文

String.Formatの糖衣構文ですね。今までのString.Formatよりも可読性が上がって良い感じです。

まだPreviewには入っていないようです。(なんて訳せばいいんだろう。。。)

2位. 行継続中のコメント

これもなにげに嬉しい。VB10で行継続が明らかな場合は行継続子(_)が不要になりましたが、行継続中のコメントは相変わらず受け入れてくれなかったんですよね。

3位 ?.オペレーター

?.オペレーターは今までのVBから見るとちょっと驚く構文ですよね。記号っぽい構文はできるだけ採用してこなかったVBなのでびっくりしましたが、シンプルに書けるのは良い感じです。

まだ確認していないんだけれどこれらは糖衣構文なので、Visual Studio 14を使えばターゲーットフレームワークをVB14より低くしても問題ない機能ってことでいいのかな?

Visual Studio 2013 Update4 を入れたら、起動時に「AutoLoadPackagePackage パッケージは正しく読み込まれませんでした。」が出る。

つい先日出たVisual Studio 2013のUpdate4を入れたわけですが、Visual Studio起動時にこんなエラーが出るようになってしまいました。

image

—————————
Microsoft Visual Studio
—————————
‘AutoLoadPackagePackage’ パッケージは正しく読み込まれませんでした。

構成の変更または別の拡張機能のインストールが原因で問題が発生している可能性があります。ファイル ‘C:\Users\xxxxxx\AppData\Roaming\Microsoft\VisualStudio\12.0\ActivityLog.xml’ を調べると、より詳細な情報を取得することができます。

引き続きこのエラー メッセージを表示しますか?
—————————
はい(Y)   いいえ(N)  
—————————

検索するとApache Cordova関連のアドオンを再インストールしたら治ったという記事を発見「‘Multi-Device Hybrid Apps for Visual Studio’のアンインストールに難儀した話」確かに入ってる。試しにCordovaのテンプレートから新しいプロジェクトを作るとこんなエラーが出る。これっぽいな。

image

—————————
Microsoft Visual Studio
—————————
The path "c:\users\sugiyama\documents\visual studio 2013\Projects\BlankCordovaApp1\BlankCordovaApp1" you have entered contains a space.  Please select a location without a space when creating a Multi-Device Hybrid App Project.
—————————
OK  
—————————

うまく行かなかったので更に検索したら、こんなKBを発見「Apache の Cordova CTP3.0 2013 の Visual Studio での Visual Studio のツールをインストールできません。」とりあえず書かれているコマンドを上から実行しています。

image

ちなみにこの画面で3時間ぐらい止まってました。一応アンインストール完了後は特に問題なく動いているようです。

カテゴリー:Visual Studio タグ:

Visual Studio(Web Essentials)でCSSスプライトを作成する。

あんまり触っていなかったんですが、Web Essentialsってすごいですね。Webページのパフォーマンス改善をやっていたのですが、Web Essentialsのお陰でかなり作業がはかどりました。

Web Essentialsの概要については井上さんのブログがとても参考になります。

    CSSスプライトってなに?

    CSSスプライトは複数の画像ファイルを一つのファイルにまとめることで、ダウンロード回数を減らし、ページ全体の表示を高速にする手法です。

詳しいことは、Googleさんに聞いてください。

で、前からCSSスプライト処理には興味はあったんですが、一部の画像だけ変更されたり、画像が追加されたりした場合に、画像の再結合作業がめんどくさかったり、CSSを調整するのが面倒だったりしてよほど読み込み頻度が多いような画像以外は対応していなかったんですよね。

Visual Studio(Web Essentials)を使ったCSSスプライト

Web Essentialsを使うと、このCSSスプライト処理を簡単に行えるというわけです。しかも画像が変更された場合は自動的に再作成してくれるし、画像が追加された場合も簡単な作業でCSSスプライトを更新できます。

Web Essentialsがインストールされていない場合は、Visual Studioの拡張機能と更新からWeb Essentialsを選択してインストールしてください。Visual Studioギャラリーからダウンロードしてインストールすることもできます。

image

画像の結合と関連ファイルの作成

チェックボックスをイメージしたこんな2つの画像があるとします。

image

ソリューションエクスプローラーで結合したいファイルを選択後、コンテキストメニューから Web Essentials → Create image sprite… を順にクリックします。適当に名前をつけてSpriteファイルを保存します。

image image

spriteファイルの他に、png,css,less,map,scssと言ったファイルがソリューションに取り込まれます。

image

エクスプローラーでImagesフォルダーを見てみると、こんな感じにファイルたちが作成されています。lessやscssはcssファイルはcssを簡易に記述するためのCSS拡張メタ言語用のファイルです。mapファイルにはscssやless,cssを出力するための定義がJSON形式で記述されています。

image

画像を表示する

先ほど作成された、cssファイルを確認してみます。もちろんlessやscssからcssを生成したい場合はそちらを参照しても良いです。取り込んだ画像ファイルは、[フォルダー名_画像ファイル名(拡張子なし)]で表示用のクラスが定義されていることを確認できます。ちゃんとbackgroundにオフセットが指定されていますね。

/*
This is an example of how to use the image sprite in your own CSS files
*/
.Images-checkbox_off {
/* You may have to set 'display: block' */
    width: 16px;
    height: 16px;
    background: url('CheckboxSprite.png') 0 0;
}
.Images-checkbox_on {
/* You may have to set 'display: block' */
    width: 16px;
    height: 16px;
    background: url('CheckboxSprite.png') 0 -16px;
}

こんなHTMLを作成すれば画像を表示できます。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <link href="Images/CheckboxSprite.png.css" rel="stylesheet" />
</head>
    <body>
        <div class="Images-checkbox_on"></div>
        <div class="Images-checkbox_off"></div>
    </body>
</html>

表示できましたね。

image

画像の差し替え

画像を差し替えたい場合は、ファイルを差し替えるだけです。先ほどとは色合いが違う画像を同じ名前でVisual Studioに取り込んであげます。

image

いっぺんにファイルをソリューションフォルダーにドロップすると、アクセス拒否されるので、一つ一つドロップしてあげてください。取り込み後のImageフォルダーを見ると、結合画像も同時に更新されていることが確認できます。

image

画像の追加

Spriteに画像を追加する場合はSpriteを作り直しても良いですが、Spriteファイルに定義を追加してあげればSpriteファイルを保存したタイミングで再生成してくれます。filses要素に<file>/Images/ping.png</file>を追加しました。

<?xml version="1.0" encoding="utf-8"?>
<sprite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://vswebessentials.com/schemas/v1/sprite.xsd">
  <settings>
    <!--Determines if the sprite image should be automatically optimized after creation/update.-->
    <optimize>true</optimize>
    <!--Determines the orientation of images to form this sprite. The value must be vertical or horizontal.-->
    <orientation>vertical</orientation>
    <!--File extension of sprite image.-->
    <outputType>png</outputType>
    <!--Determin whether to generate/re-generate this sprite on building the solution.-->
    <runOnBuild>false</runOnBuild>
    <!--Use full path to generate unique class or mixin name in CSS, LESS and SASS files. Consider disabling this if you want class names to be filename only.-->
    <fullPathForIdentifierName>true</fullPathForIdentifierName>
    <!--Use absolute path in the generated CSS-like files. By default, the URLs are relative to sprite image file (and the location of CSS, LESS and SCSS).-->
    <useAbsoluteUrl>false</useAbsoluteUrl>
    <!--Specifies a custom subfolder to save CSS files to. By default, compiled output will be placed in the same folder and nested under the original file.-->
    <outputDirectoryForCss />
    <!--Specifies a custom subfolder to save LESS files to. By default, compiled output will be placed in the same folder and nested under the original file.-->
    <outputDirectoryForLess />
    <!--Specifies a custom subfolder to save SCSS files to. By default, compiled output will be placed in the same folder and nested under the original file.-->
    <outputDirectoryForScss />
  </settings>
  <!--The order of the <file> elements determines the order of the images in the sprite.-->
  <files>
    <file>/Images/checkbox_off.png</file>
    <file>/Images/checkbox_on.png</file>
    <file>/Images/pin.png</file>
  </files>
</sprite>

追加されていますね。

image

画像やCSSの再生成なんかを後ろで勝手にやってくれるのは楽ですね。いや、ホント楽ですね。

カテゴリー:ASP.NET, Javascript タグ: , ,

ODT.NETのスキーマ比較を使ってみる

2014年3月25日 1件のコメント

ちょっと前にでODAC 12c Relase2では、ついにOracleデータベースに対してVisual Studioからスキーマ比較ができるようになったってのを触れたと思いますが、どんな感じで使えるのか確認してみます。

Oracle Data Provider for .NET 12.1のODP.NET管理対象ドライバ

ダウンロード/インストール

最初につまづきます。日本のOTNにあるODT.NETのリンクからはXCopy版のODP.NETしかリンクされておらず、ODT.NET(Visual Studioの拡張機能を含んだアーカイブ)が見当たらないので、本家のダウンロードリンクからダウンロードします。インストール自体はダウンロードしたアーカイブ中のSetupを実行してウィザードにしたがってインストールしていけばOKです。

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

データベースに接続する

Visual Studioのサーバーエクスプローラーから、新規の接続を作成します。

image

スキーマ比較を行うデータベースへの接続情報を入力します。接続タイプでEZ接続を選択すると、簡易接続子を利用してTNSを利用しないで接続することもできます。ココでは比較元をDEV、比較先をSTGという名前で接続を作成します。

image

2つのデータベーススキーマを比較する

比較元のデータベースを選択し、コンテキストメニューからOracleスキーマの比較を選択します。

image

どのスキーマを比較対象にするかを選択し、OKボタンをクリックします。詳細ボタンを押すとスキーマ比較の比較対象を設定することができます。

image

比較が開始され、、、

image

比較結果が表示されます。比較結果は右上のフィルターアイコンから異なる定義のみなどに絞ることができます。また、SQLの更新ペインにはスキーマをソースと同じ定義に変更するためのDDLが出力されます。

image

まずはここまで。SQL Serverのデータベースプロジェクトでは随分前に同じことができていたので、OracleもやっとVisual Studioに対応したというところですね。そういえば、Oracle SQL Developerのデータベース差分は別にライセンスが必要だったってのを見たことがあるけれどこちらは特に触れられていないですね。→ Oracleのスキーマを比較するツール

参考:Using Schema Compare in Visual Studio 2012

カテゴリー:メモ, Oracle, Visual Studio タグ: ,

Visual StudioでiOSアプリの開発ができる???

Xamarin enables iOS developers to write C# apps using Visual Studioと、そこでリンクされているIntroduction to Xamarin.iOS on Windowsをみると、Xamarinの新しい開発環境では、MacをビルドサーバーとしてVisual StudioでiOSアプリのコーディングができるようです。もちろんC#で。

MacOSなPCを一台も持っていないので、まだiOSのアプリ開発には手を出したことがないのですが、C#だけでなくVisual Studioが使えるのはかなり嬉しいですね。しかも、mono for androidのライセンスを持っていれば、クラスプラットフォーム開発も捗るし。それにVisual Studioが使えるので使い慣れたReShaperが使えるというおまけつき。

Installing Xamarin.iOS on Windowsに環境構築の流れとともに制限も記載されています。エミュレーターは付属しないため、デバックはiOS上でしか行えないとか、デザイナーは無いので、マックでInterface Builderで作ってねとかありますが、ちょっと可能性が広がりますね。

誰か、MacOS持っている人試してみてくれないかなー。

Visual Studio 2012イメージライブラリー

MSDNの方法: Visual Studio Image Library をインストールするを見ると、イメージライブラリーは「Visual Studioのインストールフォルダー\Common7VS2012ImageLibrary\ロケール」フォルダーにあるよ(デフォルトのインストールではC:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7)ということですが、とりあえず僕の環境にはありませんでした。

11/30付で英語版のイメージライブラリーがダウンロード可能になっています。

Visual Studio Image Library

名前がVS2012 Modern Image LibraryとなりWindows8に対応したアイコンが入っています。今回からVisual Studio Icon Library – Common Elements.pdfとVisual Studio Icon Library – Icons.pdfという2つのPDFファイルに各アイコンの説明入のドキュメントが付属していました。これほしかったんですよねー。