投稿

ASP.NET Web API の実装例

イメージ
ASP.NET Web API の簡単な雛形を作ってみました。

クライアントサイドの実装:
ボタンをクリックして、Web API を呼び出しています。

<input type="button" id="apiButton"class="btn" value="Web Api Test"/> @section scripts{ <script>functionasyncCall() { var xhr =newXMLHttpRequest(); xhr.onreadystatechange=function () { if ((xhr.readyState===4) && (xhr.status===200)) { var json =xhr.response; console.log(json); } } xhr.open("GET", "/api/items/1", true); xhr.send(null); } var button1 =document.getElementById("apiButton"); button1.addEventListener("click", asyncCall, false); </script> }
サーバーサイドの実装:
ダミーデータからパラメーターとして渡される id からデータを割り出してクライアントへ返します。

usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Net; usingSystem.Net.Http; usingSystem.Web.Http; na…

Lenovo E450 に外部ディスプレイを利用するためのドライバー

Lenovo E450 に外部ディスプレイを接続しようとした時に、デフォルトでは外部ディスプレイを認識しませんでした。
Start + P を押したところ、外部ディスプレイに対応していない旨のメッセージが出たので、Lenovo のサポートサイトに行きドライバーをダウンロード。
ドライバーをインストールすると、程なく外部ディスプレイを認識しました。

Intel HD グラフィック ドライバー (Windows 10 64bit) - ThinkPad E450, E550, L450
http://pcsupport.lenovo.com/jp/ja/products/laptops-and-netbooks/thinkpad-edge-laptops/thinkpad-e550/downloads/ds104182

ちなみに今回私が使っていた OS は Windows Server 2016 64 bit です。上記ドライバーは Windows 10 に対応しているし、いけるかなと思ってインストールしてみたらいけました。

ASP.NET MVC ActionLink の fragment を付ける方法

ActionLink に fragment を付ける方法を調べたところ、下記のような実装方法がありました。

cshtml での実装
@Html.ActionLink($"Link Text", "MyAction", "MyController", null, null, "fragmentString", null, null)
出力結果はこんな感じです。
http://localhost/MyController/MyAction#fragmentString


Including an anchor tag in an ASP.NET MVC Html.ActionLink
http://stackoverflow.com/questions/274586/including-an-anchor-tag-in-an-asp-net-mvc-html-actionlink/274637#274637

ASP.NET MVC でデータベースにテーブルを追加する方法

まずはモデルを用意します。

    public class MyModel
    {
        public int Id { get; set; }
        public string Description { get; set; }
    }


続いて、Application_Start() 内で、Database.SetInitializer メソッドにデータイニシャライザーを生成して渡します。

    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            ...
            Database.SetInitializer<DataContext>(new DataInitializer());
            ...
        }
    }

データベースとモデルの紐づけは DbContext 継承クラス内で行います。
    public partial class DataContext : DbContext
    {
        public DataContext()
            : base("name=DataContext")
        {
        }

        //モデル
        public virtual DbSet<MyModel> MyModels { get; set; }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            ...
            modelBuilder.Entity<MyModel>();
        }
    }

Visual Studio 「スタートページ」ボタンをツールバーに表示

イメージ
備忘録としてメモ。

仕事柄、いろいろなソリューションファイルを開くことがあるのですが、「スタートページ」ボタンが重宝しています。時々ツールバーから消えてしまうので、都度表示するようにしています。
ツールバーの「ボタンの追加または削除」 → 「カスタマイズ」を選択。
















ダイアログのカテゴリから「表示」 → コマンドから「スタートページ」を選択。

MySQL JOIN による3つのテーブルを結合

つなぎ合わせるテーブル3つは下記のとおりです。

受注一覧テーブル
SELECT * FROM order_master;
+----+------------+-----------+
| id | product_id | vendor_id |
+----+------------+-----------+
|  1 |          1 |         2 |
|  2 |          2 |         1 |
|  3 |          4 |         3 |
|  4 |          3 |         2 |
+----+------------+-----------+

商品一覧テーブル
SELECT * FROM product_master;
+----+----------------+
| id | product_name   |
+----+----------------+
|  1 | 調味料A        |
|  2 | 調味料B        |
|  3 | 佃煮           |
|  4 | コーンフレーク |
+----+----------------+

配送業者テーブル
SELECT * FROM vendor_master;
+----+-------------+---------------------+
| id | vendor_name | contract_date       |
+----+-------------+---------------------+
|  1 | 東京配送    | 2017-03-03 00:00:00 |
|  2 | なにわ屋    | 2017-05-03 00:00:00 |
|  3 | 桃山Express | 2018-03-03 00:00:00 |
+----+-------------+---------------------+


① 配送業者テーブル(vendor_master)から、有効期限内である業者からの受注情報を取得します。有効期限を判定するには、配送業者テーブル(vendor_master)の contract_date が今日よりも大きい日付であることを調べます。

② ①の結果取得される…

MySQL ログイン方法

下記、root としてログインするコマンドです。

mysql -u root -p

root にパスワードが設定されている場合、続いてパスワードの入力が求められます。


※ログインユーザーは下記で確認することができます。
select user();


リンク:SQL 基本コマンド一覧
http://kainobi2.blogspot.com/2017/03/sql.html