2017年の夏休みは、azure, asp.net で遊んでいる。
マイクロソフトラーニング Developing ASP.NET MVC 4 Web Applications Jump Start
https://docs.microsoft.com/ja-jp/azure/app-service-web/app-service-web-tutorial-dotnet-sqldatabase
http://dotnetappsqldb20170816075009.azurewebsites.net/
http://blog.shibayan.jp/entry/20110208/1297096899 - しばやん雑記 ASP.NET MVC 3 開発入門
ASP.NET MVC って、よくできたフレームワークだなあ。# というほどの知見は私にはないけど。
URL とプログラムの対応は、ここで決める。
App_Start\RouteConfig.cs
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
ハンドラは、モデルを操作したりした結果、ビューを呼ぶ。
Controllers\HomeController.cs
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
ビューは、このファイルに書いて、@ 文字で、C# の変数を参照できる。
Views\Home\Index.cshtml
ハンドラには、引数で、問い合わせ文字列やフォームの内容が与えられる。
データベース操作も、モデルのクラスのインスタンスの読み書きをすれば自動で行われる。
CRUD 操作まるごと、画面も含めて自動生成する機能、スキャフォールディング、がある。
テンプレートを選べば、ユーザ認証の論理も画面もついてくる。
https://docs.microsoft.com/ja-jp/azure/cosmos-db/documentdb-dotnet-application
Azure AD
http://webapplication320170830104609.azurewebsites.net/
Tips:
VisualStudio サブスクリプションについてくる、azure の無料枠は、Activate ボタンを押して、あらわに有効にしないと、使えない。
知らないで、仮想マシンゲストを作って、放置していたら、3000円も、従量課金 でかかっていた。悲しい。
私が買った VisualStudio サブスクリプションは、1年で更新をやめた。VisualStudio Professional は、その後も、3ヶ月だけ、動作した。それを超えたら、プログラムが上がるけど、以下のダイアログが出て、終了する以外の操作ができなくなった。楽しかったです。ありがとう。今後は、コミュニティーエディションを入れて、おうちで遊びます。
ちなみに、azure のアカウントも、expire したが、お客様のデータを保存ください、など、手厚いサポートがあった。
OneDrive
面白いサンプルがあった。
https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet
ファイルやフォルダは、Microsoft Graph の DriveItem である。
https://developer.microsoft.com/ja-jp/graph/docs/api-reference/v1.0/resources/onedrive
階層的フォルダのために、こんなメンバもある。
public IDriveItemChildrenCollectionPage Children
ファイルを読むには
using (var stream = await this.graphClient.Drive.Items[item.Id].Content.Request().GetAsync())
https://developer.microsoft.com/ja-jp/graph/graph-explorer
Microsoft Graph ドキュメント 日本語文書
https://github.com/microsoftgraph/microsoft-graph-docs.ja-JP
コンソールアプリケーションから、OneDrive をアクセスできる。
https://github.com/microsoftgraph/console-csharp-snippets-sample
GraphServiceClient.Me を使わないで、HttpClient を使うサンプル。
https://blogs.msdn.microsoft.com/office_client_development_support_blog/2016/12/29/microsoft-graph-onedrive-api-c-sample-code/ - Microsoft Graph – OneDrive API (C#) を使ったサンプル コード