かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

2015-01-01から1年間の記事一覧

ASP.NET Identityで独自データストアからデータを取得する(ログインからロールまで)

ASP.NET Identityカスタマイズに挑戦 - かずきのBlog@hatenaokazuki.hatenablog.com 上記記事でASP.NET Identityで完全に独自のデータストアからユーザーのデータを取ってくる方法を紹介しました。今回は、ちょっとしたシステムなら必要になってくるロールの…

ASP.NET MVCのRazor(cshtml)で認証情報にアクセスする方法

認証されてるかどうか知りたかったんです @User.Identity.IsAuthenticated でいけました。

Universal Windows Platform appのAppService

Windows 10 TPのUniversal application platformでのAppService - かずきのBlog@hatenaokazuki.hatenablog.com 上記はInsider Preview時代の記事ですが作り方は試してみたところ変わっていませんでした。Package.appxmanifestがGUIで作れるようになってたの…

ASP.NET MVCの入力値の検証で追加されるスタイルをTwitter Bootstrapのものにしたい

ということは素直には出来ないみたいです。ハードコーディングされてるっぽい。 ただ、目から鱗な方法が以下のページに紹介されていました。 How to use Bootstrap 3 validation states with ASP.NET MVC Formsnimblegecko.com 私の場合はサーバーサイドでの…

IgniteUIのigGridの高さをJavaScriptから指定する

こんな感じでいけるみたい。これでウィンドウサイズに応じて高さを動的に変えることが出来る。 $("#grid").igGrid("option", "height", $(window).height());

IgniteUIのigGridでテンプレート列を使う

ASP.NET MVCで使う方法をメモっとく。 @using Infragistics.Web.Mvc @{ ViewBag.Title = "Index"; } <script type="text/javascript"> function format(x) { return x + "歳"; } </script> <h2>Index</h2> @(Html.Infragistics() .Loader() .CssPath(Url.Content("~/Content/css")) .ScriptPath(Url.Content("~…

Visual Studio 2015 リリース記念勉強会の発表資料

UWP

Visual Studio 2015 リリース記念 勉強会 universal windows platform app from 一希 大田 www.slideshare.net とりまアップしておきました。

Universal Windows Platform appのListViewで追加されたアイテムに自動でスクロールさせたい

ということをしたいというケースがありました。 やり方としては、ItemsSourceがINotifyCollectionChangedだったら追加されたCollectionChangedを購読して追加された要素に対してScrollIntoViewしてやるだけです。 とりあえず、こういうBehaviorを作ってListV…

NuGet v3.0で認証プロキシを突破する方法

NuGet Behind Proxystackoverflow.com ここにある通りnuget.exeをゲットしてきて以下のコマンドを打ち込むことで解決できました。 nuget.exe config -set http_proxy=http://my.proxy.address:port nuget.exe config -set http_proxy.user=mydomain\myUserNa…

Windows 10の仮想デスクトップがらみのショートカット

備忘録 Win + Tab : 仮想デスクトップが選べる画面。(画面左端からスワイプと同じ) Win + Ctrl + D : 仮想デスクトップを追加 Win + Ctrl + F4 : 仮想デスクトップを閉じる Win + Ctrl + ← : 1つ左の仮想デスクトップに移動 Win + Ctrl + → : 1つ右の仮想デ…

Universal Windows Platform appでモバイルの時のみアプリバーを出す

電話のときはAppBarを出して、PCのときは出したくない!そんなときもあるでしょう。 ということでやり方です。 AnalyticsInfo.VersionInfo.DeviceFamilyでデバイスファミリーが取得できます。この値が"Windows.Mobile"のときはモバイルで動いてるということ…

Blend for Visual Studio 2015の小さな新機能 VSMのSetter対応

Windows 10 TPのUAPのVisualStateManagerの新しい機能 - かずきのBlog@hatenaokazuki.hatenablog.com VisualStateManagerで値をさくっと変えるときはStoryboardじゃなくてSetterで可能になりました。便利!これで手書きXAMLがはかどるというのもありますが、…

Blend for Visual Studio 2015の小さな新機能 RelativePanel対応

Windows 10 TPのUAPのRelativePanel - かずきのBlog@hatenaokazuki.hatenablog.com 新しいレイアウト用のPanelとしてRelativePanelが登場しました。これは、プレビュー段階では手書きこそ至高!デザイナなんて甘え!そしてインテリセンスも助けてくれないと…

Blend for Visual Studio 2015の小さな新機能 StateTrigger対応

Windows 10 TPのUAPのVisualStateManagerの新しい機能 - かずきのBlog@hatenaokazuki.hatenablog.com 上記記事で紹介してるAdaptiveTriggerですがPreview段階では手書き!手書きXAMLこそ至高という状態でした。ですが、正式版のBlend for Visual Studioを入…

#devcussion でがっこうぐらしを読んだ

正確にはdevcussionのあとのごはんタイムに読みました。 アニメしてるところなのでネタバレは置いといてせんせー…。 私は、ツインテールの子(5巻まで読んでみんなの名前を覚えてない)が好きです。一番強いよね!

Spring Bootで未入力項目をNullにする(バリデーション時に未入力のときはスルーするようにする)

Spring Bootのバリデーションは属性つけるだけで簡単にできます。 5.5. 入力チェック — TERASOLUNA Global Framework Development Guideline 1.0.0.publicreview documentation 上記のページの最後に書いてある内容なのですが、このアノテーションはnull値は…

UWPで電話だけにアプリバーを出したい

UWP

【Win10 Pre】 UWP アプリで Windows Phone 向けだけメニューを画面下部に表示したい - しっぽを追いかけてmatatabi-ux.hateblo.jp に乗っかりネタです。その上、VS2015RTMを入れちゃったので29日までWin10SDK入れれないので妄想で書いてます(重要) 別画面…

ReactiveProperty v2.2.2をリリースしました

FilteredReadOnlyObservableCollectionでインデックスの管理にバグがあったため修正しました。 NuGetからインストールできます。 ReactivePropertywww.nuget.org ついでに更新したところ NuGetのパッケージの記述内容を更新しています。 .NET Framework 4.6…

Spring BootでToDoアプリを作ってみた

こんな感じで作ってみた。 画面はしょっぱいですが、TODOアプリです。 pomの準備 とりあえずmavenでプロジェクトを作成したら、pomを編集します。お約束ですね。最近みないで打てるようになってきました。

Spring Bootでファイルダウンロードをする

Spring Bootでファイルのダウンロードを試してみました。HttpServletResponseを引数に受け取ってServlet時代と同じように書き込みをする方法もあるみたいなのですが、今回はResponseEntityというクラスを使ってみました。 こいつを使ってContent-Typeなんか…

Spring BootのThymeleafのテンプレート内でJavaScriptを書く

Thymeleafのテンプレート内でJavaScriptを書くときは以下のように書きます。おまじないだと思って <scrpit type="text/javascript"> /**/ </script> JavaScriptの<や>などがXMLのタグの開始なんかとして見られないためですね。

Spring Boot小ネタ ModelAttributeで名前を指定しなかったときのデフォルトの名前

@ModelAttribute("hoge") FooForm a みたいにしたらhogeという名前でThymeleafからアクセスできるようになります。このとき @ModelAttribute FooForm a のように名前を省略することもできます。そのときはクラス名の最初を小文字にした名前でアクセスできま…

Spring Bootでファイルをアップロードする

Spring BootでファイルアップロードをするにはMultipartFileインターフェースを受け取るようにするといいみたいです。 こんなクラスを定義して package okazuki.fileupload.simple.controllers; import org.springframework.web.multipart.MultipartFile; pu…

Spring Bootでファイルアップロード/ダウンロードのことが書いてあるページのメモ

Getting Started · Uploading Files Spring boot service to download a file - Stack Overflow あとで、このページをもとに試してみて記事にしよう。

Spring Bootでコントローラの単体テスト

Spring Bootは単体テスト機能もついてます。 35. Testing Spring Bootでコントローラの単体テストをするには、まず単体テストのクラスをアノテーションでいろいろ飾ってやる必要があります。 package okazuki.validationEdu; import org.junit.After; import…

Spring BootでバリデーションのメッセージをValidationMessages.properties以外にする

Spring Bootはデフォルトで検証エラーのメッセージをValidationMessages.propertiesから取得します。これを変えたい!って思ったら以下のようにします。 手順としては LocalValidatorFactoryBeanを作成する messageSourceを任意のものにする WebMvcAutoConfi…

Spring Bootで入力値の検証(バリデーション)の順番を制御する

Spring Bootで入力値の検証 - かずきのBlog@hatenaokazuki.hatenablog.com 基本的に上の記事の通りでいいんですが、複数の属性を同じプロパティにつけた場合に、一気にバリデーションが実行されてエラーメッセージがうざいことになってしまいます。例えば以…

Spring Bootを使って実行時にロケールを切り替える

実行時に相手に言語を選択させて表示言語を切り替えるっていうことがあると思います。 Spring Bootでもそういった機能があります。 まず、Appクラスで以下のBeanを公開します。 SessionLocaleResolver LocaleChangeInterceptor そしてWebMvcAutoCOnfiguratio…

MessageSourceのもとになるプロパティファイルを複数設定する方法

Spring Bootのメッセージはデフォルトでmessages.propertiesから取得されます。Thymeleafからは <span th:text="#{hogehoge}">XXX</span> のように取得します。 このmessages.propertiesが気に入らなければapplication.propertiesでカスタマイズすることができます。 以下の設定項目を使います。…

Universal Windows Platform appでタイトルバーに戻るボタンを出す方法 その2

Universal Windows Platform appでタイトルバーに戻るボタンを出す方法 - かずきのBlog@hatenaokazuki.hatenablog.com 先日、UWP appのタイトルバーに戻るボタンを出す方法を書きましたが、ストアのアプリを見てると戻れないときは戻るボタン出さないように…