redmine APIを使ったちょっとしたスクリプトが欲しいと思い立つ。慣れてるC#で書きたい。 とはいえ、さすが本番環境で試すわけにはいかないので、とりあえずテスト用のredmine環境が欲しい。Azureアカウントなら持ってる。 こう思ってからスクリプトを書いて…
日々の体温を記録する必要が出たので、Office365ライセンスのPowerAppsで入力アプリを作ってみた。 入力画面を開くと、現在日時とユーザー名を取得してデフォルト値として入力してくれる あとは体温だけ記入して保存ボタンを押せばOK 入力したデータは、自分…
次のようにパイプでfindコマンドに文字列を渡した場合に、なぜか「No such file or directory」が返ってくる場合がある。 dotnet tool list -g | find "dotnet-script" >NUL ↓ find: 'dotnet-script': No such file or directory Azure Pipelinesのscript Ta…
TaskDialogは長い文字列を自動で折り返す機能を持っているが、これはスペースが無いと折り返せないようだ。 スペースなしの代表的な文字列「ファイルパス」を入れてみると、長い場合はこのように...で省略されてしまう。 スペースを入れなかった場合の画面 …
以前の記事で書いたとおり、Yaml.NETのデシリアライズは対応するメンバが無い場合に例外を出す処理になっている。(YAMLファイルにある値が、デシリアライズ先のクラスのメンバに無い場合) この処理は、データを増減させると前方・後方互換が無くなるので、…
結論から言うと、Resharperで対象ソリューションのキャッシュを削除する事で解決した。 https://pleiades.io/help/resharper/Configuring_Caches_Location.html VisualStudioを使っていたら、急にインテリセンスの候補が表示されなくなった。マウスでポイン…
ビジネスチャットツールの中で比較的メジャーな2つ、SlackとTeamsを社内で使っている。この2つは似ているようでいて、使ってみるとかなり違いがある。社内でも使い分けに悩むという声が上がっているので、違いをまとめてみようと思う。 まとめ Teamsはタスク…
結論 OSSを導入できる環境ならJSON.NETで問題なく実現できる。.NET Frameworkだけで使用可能なXmlSerializerも、扱いが少し面倒だが同等に実現できる。 YamlDotNetは、増加は問題ないが減少で問題が出る。 調べた内容 クラスの中身を文字列化してファイル保…
C#で、関数の戻り値やout引数が不要なので捨てたいという場合がある。 今まではnotUseのような適当な名前でダミーの変数を宣言していたが、C# 7.0からはもっと良い書き方が登場していた。 _(アンダーバー)を書けばよい。 これなら型指定もいらないし、書き…
この記事の内容に加えてXML・YAMLも試してみた、より新しい記事はこちら。 http://suusanex.hatenablog.jp/entry/2019/09/23/171255 JSON.NETのシリアライズ・デシリアライズを採用しようとして、1つ気になる点があったので実験した。.NET 4.5.2 + Newtonsof…
技術書もビジネス書も何でも揃っていたブックファースト(旧あおい書店)が、ダイエー横浜西口店と共に閉店してしまった・・・。難民となったので、代わりになる本屋を探してみた。 結論 ソフトウェア工学系なら紀伊国屋そごう横浜店が強い。言語・フレーム…
VisualStudioのインストール状態がおかしくなってアンインストールもできなくなり、MSサポートに相談した。 完全にアンインストールする手段があると教わったので、メモもかねてブログに残しておこうと思う。 次のツールがあり、これを使うと完全に削除でき…
ReSharperで日々のコーディングが便利になっているが、実に多機能でまだ使い切れていない。 使っていて「お、これはいいな」と思ったものを1つ紹介しよう。 コンストラクタに引数を受け取り、それをメンバ変数に代入して保持しておく。DIも含めて、そういう…
.NET CoreやStandardがどんどんバージョンアップしているが、既存のコードの保守で組み込むには.NET Frameworkとの共存がどうなっているかがポイントになる。 C#に加えて、C++/CLIとの組み合わせでどうなるかを調べてみた。 https://www.slideshare.net/keit…
Web上でも事例が見つからない問題で悩み、一応解決方法を見つけたのでブログに書いておく。 Git for WindowsでAzure DevOps(旧VSTS)のgitリポジトリへアクセスした場合に、Azure ADの認証ダイアログが出ずに二要素認証ができないという問題が起きた。一部…
VisualStudioを使ってる人ならおなじみIntellisenseについて、AIで推奨を出してくれる機能を追加するとBuildで発表されていた。Intellicodeという名前で、まだプレビューだがすでに使えるようだ。 どんなものかお手並み拝見と思っていたが、次の記事を見て驚…
いまさら感があるが、std::threadの便利さに恐れ入ったので記事を書く。感覚的には、C#のSystem.Threading.Thread+ラムダ式と同じくらいの感じで高速に書けそう。使ってる人にとっては常識的な話なので、そういう人はスルーしてください。 ごく簡単な処理を…
プロジェクト管理の勉強会で印象に残った話。 外部設計の品質の測り方 要件ごとに、粒度と網羅度で採点する 粒度は、FP算出できる程度まで細かくなっているかどうか 網羅度は、その粒度において要件の内容を網羅するだけの記述があるかどうか これらの観点を…
ちょっと勉強会でクロスプラットフォーム開発の話を聞いてきたので、ポイントをまとめてみる。私はC#にかなり慣れているのでまずXamarinで一度作ったことがある。WCFも使えたので共通コード部分はかなり書きやすかった印象がある。しかし一般的にはXamarinは…
Jenkinsを新しくWindowsサーバーにインストールして、最新版で新しいプラグインを使おうと考えた。 その程度のことなのにいくつも引っかかる点があって結構時間がかかってしまったので、気を付けるべき点としてまとめておこうと思う。 なお、インストールはJ…
チームメンバーの一部の書くコードがトラブルを出しすぎてまともに商用に使えないレベルなので、半年ほど徹底的なコードレビューに取り組んできた。 どの指摘も「プログラマならできて当たり前」と思っていたのであえて教えたりしていなかったが、どうやら当…
C#6.0の記事をMSDNで見たところ、細かいところでコードを書きやすくなる便利な改善が入っていて俄然楽しみになった。特に気になった機能をいくつか簡単なコード例付きで説明する。間違っているかもしれないので、原典は最後にリンクするURLを見て欲しい。
ASP.NET Identityのユーザー情報に既存のDBのレコードを使うものを作ってみた。この方式だと、ロールごとにページのアクセス権を管理したり一定時間でセッションをタイムアウトしたりといった機能をASP.NET Identityがよろしくやってくれるので独自にユーザ…
ASP.NET MVCのRazorでMicrosoft AJAXを使ってみようとして、「部分更新が動かないが、特にエラーも出ない」という困った状況になってしばらくググる羽目になったので、動かすまでに必要なことの情報をまとめておく。使用環境はVisual Studio 2013 Update3。 …
ASP.NET MVCを勉強中で、ちょっとしたサンプルを作っている。その中で、JavaScriptを外部ファイルとして追加する時にファイルが見つからずに読み込めないという意外な現象ではまったので紹介する。 MSDNの解説などにある通りに「jsファイルは全部Scriptフォ…
C#で作るWebアプリの選択肢として、完全信頼のxbap形式というものがある。 これを仕事で使ってみた感想と、Webアプリのその他の選択肢との比較をまとめてみた。 xbap形式(WPF)を選択肢に含めた比較情報は少なかったので、役に立つのではないかと思う。 ただ…