Emotion Wave Tech Blog

福岡にあるエモーションウェーブ株式会社のエンジニアが書いています。

C#

C#でAngleSharpを使ってHTMLをパースする

こんにちは。中原です。 今回はC#でAngleSharpというのを利用してHTMLをパースしてみました。 HTMLパースすることなんてあまりないかもしれませんが、もしパースする機会があればAngleSharpを使ってみてください。 AngleSharpはこちら。 github.com AngleSha…

C#でClosedXMLを使ってExcel出力を実装する

C#

久しぶりのブログです。 EW中原です。 本日はC#で簡単なExcel出力の実装についてです。 昔はCOMを使って実装していましたが、 動かすPCにExcelが入ってないと動かない、気をつけて実装しないとEXCELのプロセスが残る等色々とあるので、 今回はCOMを使わなく…

C#でUTC時間に変換

C#で各タイムゾーンの時間をUTCに変換したり、その逆でUTCから各タイムゾーンの時間に変換する方法を調べました。 UTCについては以下を参照ください。 ちなみに日本はUTC+9です。 UTC協定世界時とGMTグリニッジ標準時の違い | LOCALTIME.JP サンプルコードは…

第1回CodeEW(エモーションウェーブプログラミングコンテスト)のお題はFizzBuzz

お久しぶりです。中原です。 先日社内でプログラミングコンテスト(CodeEW)を行いました。 プログラミングコンテストを行ったきっかけ 今回プログラミングコンテストを行ったきっかけは、 弊社のエンジニアからYammerで「あそこのコードがちょっと気持ち悪…

XamlでStyle適用させる方法

最近xmalコーディングばかりなので、xamlでのスタイルの適用について書きます。 まずは、x:Keyを使用してのスタイルの適用。 x:Keyでスタイルを定義し、StaticResourceでスタイルを適用されます。 <Window.Resources> <style> <Setter Property="Width" Value="100" /> <Setter Proper</style></window.resources>…

C#の静的解析と言えばStyleCop

みなさんC#でも静的解析を行っているでしょうか。 その前に静的解析とは? 静的コード解析 - Wikipedia JavaだとFindbugsという有名な静的解析ツールがあります。 1年前くらいにC#開発をやってたのですが、C#にもFindbugs的な静的解析ツール無いかなぁと探し…

WPFの画面でジェネリック・クラスを継承

WPFの画面でジェネリック・クラスを継承させることってできるのかな? と思い調べてみたらできました。 こんな感じです。 まず、継承させるジェネリック・クラスを作成します。 namespace WpfBaseWindow { public abstract class BaseWindow<T> : System.Window</t>…

Wpf DataGridからDataGridRow取得でnullが返る件

初登板ホリノウチです。 WPFでDataGridからDataGridRowの取得にはContainerFromIndexやContainerFromItemがあります。 (環境: Windows7, .net framework4, C#, wpf) DataGridRow row = (DataGridRow)grid.ItemContainerGenerator.ContainerFromIndex(index);…

テーブル定義書からEntityクラスを自動生成したら実装が少し楽になった(きっと)

あけましておめでとうございます。 本年もよろしくお願いします。 とても久しぶりなブログですが、今年一発目はC#.NETを使った開発での話を。 データベースからSELECTで取得した値をクラスに格納したりすることがあると思います。 DataTable等に格納しても良…

ループなんか書きたくない(出来るだけ)

最近、C#ばっかりやってるのですが、ループは出来るだけ書かないように気を付けています。 photo credit: Eddy.H via photopin cc 例えばintのリストがあって、そのリストの中から値が5以下の値のみリストで取得するとき、 今までは以下のように書いていまし…

LINQで動的検索パート2

Yammerでメソッドのオーバーロードの話してたら、 LINQで動的に条件つける時ってどう書いてんの?って話になったので(なんで?)、メモ書き程度に書いておきます。 ちなみに環境は、Windows7、.NET Framework4、C#です。 24行目から28行目でパラメータに値…