C#

Prism PubSubEventを簡単に

(adsbygoogle = window.adsbygoogle || []).push({}); GetEventとか長ったらしい。おもむろに以下のクラスを実装しましょう。 using Prism.Events; using System; namespace Hoge { public abstract class StaticPubSubEvent<T> : PubSubEvent where T : Static</t>…

Enum Radio Button Binding

(adsbygoogle = window.adsbygoogle || []).push({}); WPFのMVVMは好きです。他の言語で似非MVVM書いてるとなんだかなーって思う。 が、やっぱりWPFは嫌いです。はい。EnumをBindingしたいとき。まずおもむろにEnumの拡張を用意しましょう。このブログでも出…

UnityでVisual Studio for Mac Preview

タイトルの通り!Unity 5.4.0f3 Visual Studio for Mac Preview Preview1(7.0 build 347) ですよ。C#エンジニアとしてはね。 Visual Studio様を崇拝してるわけでして。 Visual Studio使いたいがために、ずっとWindowsでUnity使ってたんですが。 iOS+Android…

悪用厳禁なやつ

ひさびさに.NET書いたねん。 どうしてもしょうがなくね。 悪用厳禁 using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Prog…

【C#】インデックス付きforeach

C#

ひさびさC#ネタ IEnumerable拡張です。 public static void ForEachWithIndex<T> (this IEnumerable<T> source, Action<T, int> action) { foreach (var x in source.Select((item, index) => new {item, index})) action (x.item, x.index); } (adsbygoogle = window.adsb</t,></t></t>…

【C#】コンソールアプリからGoogle Cloud Datastoreに接続

C#

お久しぶりでございます。 タイトルの通りコンソールアプリからGoogle Cloud Datastoreに接続でございます。最近GCPと戦ってるんです。だるだる。 つってもGCPからAWSにお引っ越しするだけですけども。 お引っ越しなので当然エンティティは作成済のものとし…

【C#】【iOS】In-AppPurchaseレシートの検証-Consumableバージョン

あけおめにゃん。iOS側は省略。ググればあるにゃん。 サーバーサイドはPHPだといっぱいあるんだけど、C#はあんまないから書いとくにゃん。とりあえずデシリアライズ用のクラスさんたち。 (adsbygoogle = window.adsbygoogle || []).push({}); [DataContract]…

【C#】確率抽選

C#

はい、確率抽選。 必要にかられて作った。 ぼくが知ってるのはもっと長ったらしかった気がするけど、どうせ抽選だしこんなもんでいーべ。 private static Random _rnd = new Random(); public static T WeightedRandom<T>(this IEnumerable<T> source, Func<T, int> select</t,></t></t>…

【C#】Directory系メソッドは非同期

まんま。Directory.Delete()とかDirectory.CreateDirectory()とか 手抜きでこんな感じで回避 const string dir = "hoge"; if (Directory.Exists(dir)) Directory.Delete(dir, true); while (Directory.Exists(dir)) Thread.Sleep(10); (adsbygoogle = window…

【C#】Androidへのプッシュ通知

まんま Android側の設定とかはぐぐってくださいな using System.IO; using System.Net.Http; using System.Net.Http.Headers; using System.Runtime.Serialization; using System.Runtime.Serialization.Json; using System.Security.Cryptography; using Sy…

【AWS】【C#】参考スライド

いやはや。だいたいC#、AWSでぐぐるとgraniさんにいきつきますね。 参考になる。 ElastiCache使おうと思ってたけどいまいちなのか。 ひさびさにLinux触るか。。 いや、どうせそんなアクセスなさそうだしキャッシュ層一旦なしでいっか。 負荷が高くなったら考…

【C#】SQL Server接続とか

C#

まぁ、これはWindowsアプリに限らんけどもー ちゃんと既定クラスなりinterfaceなり用意して設計すれば、SQL Serverだけじゃなくても使えますねー (adsbygoogle = window.adsbygoogle || []).push({}); using System.Collections.Generic; using System.Data;…

【C#】シリアライズ・デシリアライズ xml編

宣言。ぼくはwebエンジニアではありません。 今作ってるやつからかっさらってきたソースは大体晒し終わったので、やっと本題。 ここからはWindowsFormアプリケーション・コンソールアプリケーションが中心だぉwindowsアプリで設定値保存したいときとかにxml…

【C#】デバッグ時にコマンドライン引数を受け取る

C#

つかれたので休憩。コンソールアプリー class Program { static void Main(string[] args) { foreach (var arg in args) { Console.WriteLine(arg); } } }デバッグ時のコマンドライン引数の指定は、プロジェクト右クリック→プロパティから (adsbygoogle = wi…

【C#】クラス名を指定してインスタンス生成

書こうと思ったらいっぱいネタはあるらしい ただ残念ながら、iOSのほうがネタがいっぱいあるのが悔しい var instance = Activator.CreateInstance(Type.GetType("クラス名")); (adsbygoogle = window.adsbygoogle || []).push({});

【C#】メール送信!

C#

晒す第二弾実際はこれをさらにラップして使っております。 using System.Net; using System.Net.Mail; namespace Hoge.Util { public static class MailUtil { /// <summary> /// メールを送信します。 /// </summary> /// <param name="message">メールメッセージ情報</param> public static void SendMail(Me…

【C#】IComparable拡張 - とある値が範囲内にあるか調べる

C#

拡張シリーズ! 他のは大体晒したかな? using System; /// <summary> /// IComparable拡張 /// </summary> public static class IComparableExtensions { /// <summary> /// 指定された値がmin以上、max以下かどうか /// </summary> /// <typeparam name="T">型</typeparam> /// <param name="value">値</param> /// <param name="min">最小値</param> ///

【C#】Log4net入門

Log4netも長いお付き合いでして。。 最初に触ったのは、もう何年前だか。。とりあえずLog4netをダウンロード http://logging.apache.org/log4net/download.htmlソリューションエクスプローラーから、対象のプロジェクト右クリック→参照の追加で先ほどダウン…

【C#】とある型が特定のinterfaceを実装しているかどうか調べる

はい、前回の続き! タイトルまんま!この例ではとある型HogeがIProcessHostPreloadClientを実装しているかしらべますよー 2016/04/06 コメントいただいたので訂正いたしました。 通りすがりの者さんありがとうございます! (adsbygoogle = window.adsbygoog…

【C#】アセンブリで定義されている型を取得する

はい!とりあえずアセンブリ一覧取得 ASP.NETと.NETで微妙に違うのだけれどもー // ASP.NET環境の場合 var assemblies = BuildManager.GetReferencedAssemblies().Cast<Assembly>(); // .NET環境の場合 var assemblies = System.AppDomain.CurrentDomain.GetAssemblies</assembly>…

【C#】ブレークポイントが止まらない!

はい、怒涛の更新ラッシュ第1弾!知ってましたか?Visual Studioでブレークポイント置いても止まらないときがあるんです。例えば、ASP.NETアプリケーションのApplication_Start()メソッド内とか デバッガがアタッチする前に通っちゃうからブレークポイント止…

【C#】オートスタートはまった第二弾-Assembly編

つーか厳密にはハマったのオートスタートじゃないですね。 なーんでかPreload失敗するorz こないだはこいつがおかしかった!と、applicationHost.configとにらめっこすること1時間 IIS ExpressだとPreload呼ばれないから無理やり呼び出してみるも、ローカル…

【C#】IEnumrable拡張

素晴らしい。 この方はiOSも書けるのかな? 【C#】配列やリストから目的の値に最も近い値を取得する拡張メソッド その2 - コガネブログ (adsbygoogle = window.adsbygoogle || []).push({});

【C#】Enumで文字列定義

C#

便利よねってゆかAttirbute便利こんな感じで定義して public enum ApType { [StringValue("Develop")] 検品 = 0, [StringValue("Production")] 本番 = 1, }こんな感じで使えるようにしましたぉ if (ApType.検品.StringValue() == "Develop") { } else if (Ap…

【ASP.NET MVC4】区分追加&WebViewでフォーム認証

はい、世間は夏休みとかいうやつらしいですね。 時間があるからまじめにかく! とかいいつつ、ただいっつも忘れるからメモなだけーwASP.NET MVC4 Webアプリケーションへの区分の追加方法ですよー (adsbygoogle = window.adsbygoogle || []).push({}); Web.co…

【C#】小ネタ 誕生日を計算する

今日は調子がいい!ってことで2連ちゃん!なお、珍しくコンソールアプリケーションなんて使ってみてますよー誕生日を基に年齢を計算します。参考URL↓ http://stackoverflow.com/questions/9/how-do-i-calculate-someones-age-in-c (adsbygoogle = window.ads…

【C#】Web.configから設定値を取得する

はーい、今日も晒していきますよーiOSのブログのほうが流入多いんですけどねー めげずにC#書きますよーASP .NET Webアプリケーションだと、Web.configをDebug/Relaseで切り替えて設定を保持しますねー ここらへんはググれば出てくるで割愛ー で、Web.config…

【C#】string拡張クラス晒してみる

C#

おはよーござます。 朝ですねー。。Microsoft MVPに応募したった for Visual C#で ってことでこのブログはC#に寄っていくことになるかと思われますーそれとは別件で近々大発表がありますので乞うご期待で、早速。 私ちゃんと自分で基盤持っているので、そっ…

【Objective-c】【C#】AESで暗号化・復号化

【追記】2014/10/20 これJava系(Android)とのやりとりでも使える・・・はずwiOSとASP .NET MVC Web API間で暗号化・復号化するときですねー OpenSSL途中まで実装したけどAES128に妥協しました。はい。とゆーことで、今日もさらしますよー Objective-c側 な…

【C#】度形式⇔度分秒形式の変換

C#

そーいえば、これ技術ブログなこと忘れてた。とりあえずソース晒せばいいんでしょ?数年前に作ったやつ。たしかそんなに誤差はなかった。 public static string ParseDegreeToDms(double value) { double tmp = value; var degree = (int)Math.Floor(tmp); t…