Surfaceを音楽プレイヤーとして使ってみる。(iPadとの比較)

今までiPadiPodiTunesを音楽プレイヤーとして使ってきましたが、せっかくSurfaceを買ったのだ。これは試すしかない。

 

とりあえずデスクトップからiTunesをダウンロードしてインストール。iCloudから曲の同期。通常使用に全く問題なし。ダウンロードされた曲は、「ミュージック」でも普通に再生可能。ここまではまぁ想定内。

デスクで、車で、いろいろなところで音楽プレイヤーとして使ってみました。

 

とりあえず、ヘッドフォンを使う場合と使わない場合で、ボリュームが切り替わるのは、iPadと一緒。これは便利。

iPadはヘッドフォンを抜くと自動的に一時停止するが、「ミュージック」はそのまま。好みだろうが、私は一時停止してくれたほうがありがたい。これはアプリでどうにかなるのだろうか?

もっとも閉口したのが、TypeCoverを閉じると、スリープに入るのはいいのだが、音楽まで止まってしまうこと。iPadは当然音楽が流れ続ける。車で音楽を聴こうと思ったら、ずっと画面出しっぱなしにしておかなければいけない。

さらに、iPadはスリープ状態から、ボタン2回押すことですぐにプレイヤーが出てくる。(パスワードがセットされていても。)しかし、Surfaceの場合、ロック画面→ログインの手順をたどらないとそこまで戻れない。これは面倒くさい。

そして、スリープからの復帰時間もiPadよりもたつくことがある。

「ミュージック」アプリ自身も操作するのにひと手間多く使いやすいとは言えない。

 

SurfaceをPCだと思えば、スリープからの復帰も、ピクチャーパスワードもとってもいいと思う。だが、タブレットとして、音楽プレイヤーとして考えると、まだまだ残念なところが多い。

自分の中でのSurfaceの主の使用目的ではないのでいいのですけれどね。

でも、がんばれMicrosoft。

あと、こう設定すればいいよとかあったら教えてください。

 

iPad 32GB Wi-Fiモデル MB293J/A

iPad 32GB Wi-Fiモデル MB293J/A

ASP.NET MVCのajax Formで2回Postされてしまうバグに悩まされる。

気がついたら「なんだよー。そんなことかよー。」っていう話なのですが。

ASP.NET MVCAjax.BeginFormでデータの登録をしていたのですが、なぜか、2回連続でPostされて、2重にデータが登録されてしまう事態に。

意味がわからなくてかなり悩まされました。

 

結論から言うと

Ajaxで必要となる、jquery.unobtrusive-ajaxを2重に読み込んでいるだけでした。

BundleConfigを整理整頓したつもりだったのが仇となって、余計なバグを仕込んでしまいました。というお話。

 

ひと目でわかるASP.NET MVCアプリケーション開発入門 (MSDNプログラミングシリーズ)

ひと目でわかるASP.NET MVCアプリケーション開発入門 (MSDNプログラミングシリーズ)

ASP.NET MVC実践プログラミング―.NET Frameworkによる標準Web開発技法

ASP.NET MVC実践プログラミング―.NET Frameworkによる標準Web開発技法

ASP.NET 3.5+jQuery Ajax実践サンプル集

ASP.NET 3.5+jQuery Ajax実践サンプル集

Surface Pro開封写真レポート

Surface Pro 256GB版届きました!

開封写真レポートします。

 

箱にも高級感が合ってかっこいいです。

f:id:kaz16a:20130608115011j:plain

 

開封~

f:id:kaz16a:20130608115256j:plain

 

取り出すと中には、ペンと説明書が入ってます。右側のは電源です。

 

 

 

f:id:kaz16a:20130608115517j:plain

 

 

スタンド。シャキーン!

f:id:kaz16a:20130608115725j:plain

 

合体!
TypeCoverといって、少し厚くて打ちやすいキーボードです。
磁石でパチッっとくっつきます。楽しいです。

f:id:kaz16a:20130608115825j:plain

 

 

電源とペン。
ちなみに電源コードには、別にUSB端子が付いていて、スマホなどの充電が出来ます。超便利。

f:id:kaz16a:20130608115950j:plain

 

Surfaceと電源コードの接続。こちらもマグネットでパチッと接続します。
コードを引っ掛けたりしても、折れたりするようなことは無いと思うので安心ですね。
ちなみにどちら向きでもOK。

f:id:kaz16a:20130608120132j:plain

 

ちなみに電源をくっつけるところには、ペンをくっつけることも出来ます。
持ち運ぶとき便利。

f:id:kaz16a:20130608120202j:plain

 

起動!もうすぐだ。もうすぐだ。

f:id:kaz16a:20130608120454j:plain

 

キター。

f:id:kaz16a:20130608121210j:plain

 

ということで。開封写真レポートでした。

つくりはしっかりしていて、安物感はないです。

(まぁこのセットで13万ですからね。)

 

使用したレビューは、また追々しようと思います。

Surface Pro注文しました!

6/7はSurface Proの発売日ということで早速注文しました。

もちろんSurface Pro 256GB版とType Coverです。一番お高い仕様ですね。

 

6/7朝時点での状況です。

どこで買おうか迷ったんですが、

 

ビックカメラ楽天市場店なら

http://item.rakuten.co.jp/biccamera/4988648921559/

ポイントが3倍で3420ポイントもつくのですが、次回入荷未定のまま・・・。

 

早く見てみたいので、直接MicrosoftStoreで注文しました。

2~4営業日発送みたいです。

Surface Pro 256GB [H5W00001] 119,800円

Surface TypeCover 10,980円

で合計130,780円です。

 

タブレットだと思うと13万は高いような気がしますが、

ペンつきでタブレットにもなるCore i5のノートパソコン。

しかもOffice付き!(PersonalではなくHome&Business。PowerPointも付いているのがナイス。)

で13万なら、まぁそこそこいいんじゃないか?

マイクロソフト純正だし。

 

ということで、届いたらまたレポートしてみようかと思います。

 

Microsoft Surface Type Cover キーボード カバー 日本語版

Microsoft Surface Type Cover キーボード カバー 日本語版

 

 

はてなblogでsyntaxhighlighter.autoloaderをつかってC#ソースコードをきれいに表示させる方法

こんな感じで表示されます。

using System;
namespace HelloWorld
{
    class Hello 
    {
        static void Main() 
        {
            System.Console.WriteLine("こんにちは!");
        }
    }
}

手順は以下の通り

  1. 管理 > デザイン を開く
  2. カスタマイズ > フッタ の「HTMLを記述できます」欄に以下のコードを貼り付ける。
  3. 記事の中で<pre class="brush:c#">書きたいC#コード</pre>
  4. 完成!

注意点や補足として、

  • このコードを張る場所は、フッタでなくてもかまいませんが、記事より後ろに貼り付けること。
  • 違う言語で表示させる場合は、brush:の後ろを変更する。
  • 「<」、「>」などの表現はpreタグ・メーカーを使うと便利です。
  • 使わない言語定義は消してもかまいません。

 

ちなみにAmazon S3ホスティングされている模様。寄付を募っているみたいです。

 

<link href="http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css" rel="stylesheet" type="text/css" />
<link href="http://alexgorbatchev.com/pub/sh/current/styles/shCoreDefault.css" rel="stylesheet" type="text/css" />
<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js" type="text/javascript"></script>
<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shAutoloader.js" type="text/javascript"></script>
<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushXml.js" type="text/javascript"></script>
<script type="text/javascript">
function path()
{
  var args=arguments, result=[];
  for(var i = 0; i < args.length; i++)
      result.push(args[i].replace('@', 'http://alexgorbatchev.com/pub/sh/current/scripts/'));
  return result
};
SyntaxHighlighter.autoloader.apply(null, path(
  'applescript            @shBrushAppleScript.js',
  'actionscript3 as3      @shBrushAS3.js',
  'bash shell             @shBrushBash.js',
  'coldfusion cf          @shBrushColdFusion.js',
  'cpp c                  @shBrushCpp.js',
  'c# c-sharp csharp      @shBrushCSharp.js',
  'css                    @shBrushCss.js',
  'delphi pascal          @shBrushDelphi.js',
  'diff patch pas         @shBrushDiff.js',
  'erl erlang             @shBrushErlang.js',
  'groovy                 @shBrushGroovy.js',
  'java                   @shBrushJava.js',
  'jfx javafx             @shBrushJavaFX.js',
  'js jscript javascript  @shBrushJScript.js',
  'perl pl                @shBrushPerl.js',
  'php                    @shBrushPhp.js',
  'text plain             @shBrushPlain.js',
  'py python              @shBrushPython.js',
  'ruby rails ror rb      @shBrushRuby.js',
  'sass scss              @shBrushSass.js',
  'scala                  @shBrushScala.js',
  'sql                    @shBrushSql.js',
  'vb vbnet               @shBrushVb.js',
  'xml xhtml xslt html    @shBrushXml.js'
));
SyntaxHighlighter.config.bloggerMode = true;
SyntaxHighlighter.all();
</script>

ASP.NET MVCのajax Formで複数のsubmitボタンを使う方法

お仕事でフォームを作っているときに、どうしてもajaxを使って複数の呼び出しをするフォームを作る必要が出てきてしまったので、やり方をメモしておきます。

 

ビュー側

@model Models.MyModel

@using (Ajax.BeginForm("Action", "MyController", new AjaxOptions { HttpMethod = "Post"}))

{

    @Html.AntiForgeryToken()

    <input type="submit" name="Action1" value="1" />

    <input type="submit" name="Action2" value="2" />

    <input type="submit" name="Action3" value="3" />

}

コントローラー側

[ValidateAntiForgeryToken]

[HttpParamAction]

[HttpPost]

public ActionResult Action1(Models.MyModel model)

{

    if (Request.IsAjaxRequest())

    {

        // ここで処理を行う。

    }

    else

    {

        return new EmptyResult();

    }

}

Action2以降も同じ

解説

  • ビューのsubumitの部分のname属性とコントローラ側のメソッド名を合わせます。
  • 呼び出されるメソッド側には[HttpParamAction]、[HttpPost]属性をつけます。
  • メソッド内で  Request.IsAjaxRequest()を確認し、ajax稼動か調べましょう。

そう複雑なことも無いので、上手く使えるときは使っていきましょう。

 

おまけ

jquery.unobtrusive-ajax.min.jsを参照するの忘れないようにしましょうね。

最初動かなくて一瞬あせったのは内緒です。

 

AjaxOptions のUpdateTargetIdやOnSuccess, OnFailure, OnCompleteを上手く使いましょう。

 

 

Programming ASP.NET MVC 4: Developing Real-World Web Applications with ASP.NET MVC

Programming ASP.NET MVC 4: Developing Real-World Web Applications with ASP.NET MVC

 

とうとうjQuery 2.0がリリースされました。

jQuery 2.0 Released

とうとうIE8の終わりの始まりですね。

IE8が無くなるのは、まだ多大なシェアのあるWindows XPが無くならないといけないので、それでもまだ数年はかかるのでしょう。

しかし、本格的なHTML5+CSS3の時代の始まりのきっかけになると期待します。

 

で、何が変わったか少し見ておかないといけませんね。

IE8以下サポートせず

1.9の次は1.10となるそうです。今後の2.0系との互換性が気になります。

2.0は1.9と互換性あり

これは助かりますね。

サイズが小さくなる

jquery-1.9.1.min.js(92629byte)

jquery-2.0.0.min.js(83095byte)

なので、約10%ほど小さくなってますね。ファイルサイズだけ見ると小さいでしょけれど、かなりのサイトでjQueryが使われていることを考えると、メリットは非常に大きいですね。

 

当面はこんな感じでしのぐんでしょうかね。

<!--[if lt IE 9]>

 <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

<![endif]-->

<!--[if (gte IE 9)|!(IE)]><!-->

 <script src="http://code.jquery.com/jquery-2.0.0.min.js"></script>

<!--<![endif]-->

 

jQuery 2.0に関する本がもう出ているのか!

これからもっといろいろ出るんだろうなぁ。

通常版

Instant jQuery 2.0 Table Manipulation How-to

Instant jQuery 2.0 Table Manipulation How-to

kindle

Instant jQuery 2.0 Table Manipulation How-to

Instant jQuery 2.0 Table Manipulation How-to