Microsoft ASP.NET Blazor #02

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2020/11/22(日) 05:30:30.13ID:kDrPKY9d
ASP.NETのBlazorのスレッド part2です。

ASP.NET
https://dotnet.microsoft.com/apps/aspnet
ASP.NETは、クロスプラットフォーム対応、無料、オープンソースのフレームワーク
Free. Cross-platform. Open source.
A framework for building web apps and services with .NET and C#.

Introduction to ASP.NET Core Blazor
https://docs.microsoft.com/en-us/aspnet/core/blazor/?view=aspnetcore-5.0

【本命】Blazor スレ1【真打】
http://mevius.5ch.net/test/read.cgi/tech/1595255796/
2デフォルトの名無しさん
垢版 |
2020/11/22(日) 05:37:28.65ID:kDrPKY9d
Blazor
Build client web apps with C#
https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor
2020/11/22(日) 12:05:05.73ID:ab9PVYBK
アンチBlazorがVS、VSCodeの対立を煽り、スレを荒らしている可能性があります
内輪もめはやめて、Blazorについて有益な意見交換の場にしましょう
2020/11/22(日) 12:12:49.29ID:vrdBpsCk
Blazor Serverでもwasmでもいいんだけど
大規模になると1プロジェクト(wasmだと3プロジェクト)では収集がつかなくなるような気がしている。
例えば業務系だと100機能くらいあったりするわけだがその分Viewを作るのはまずいよな?
mvcはareaで分けているけど、あれも結局フォルダで分けてるだけだからなあ

複数のプロジェクトを跨いで開発、デプロイをするようなサンプルはないものか。
2020/11/22(日) 12:18:49.45ID:kDrPKY9d
>>1
ローカルルールひとつだけ追加

スレ立て時にワッチョイをつけるのは厳禁
理由1: 荒れるから。人物特定と人物叩きの話題が増えるため
理由2: ワッチョイはセキュリティ、プライバシー上の問題があるため
NGにしたい場合は各自で対応するように。
2020/11/22(日) 12:22:30.45ID:dtkY0af3
フォルダ分けでいいと思うけど
あでもビルド時間を短縮したいならプロジェクト分けたほうがいいのか
2020/11/22(日) 12:31:41.65ID:kDrPKY9d
>>4
ASP.NET MVCではファイルが増えがちなのは仕方ない。
そういうもの。

Razor PagesはMVCほどファイルが複雑にならないというのを
利点にあげていた。
ただ俺にはRazer Pagesは柔軟性のない欠点のが大きく見える。
コードビハインドで昔のWeb Formsっぽいというかね
2020/11/22(日) 12:58:15.06ID:4i3C/72s
>>7
いやMVCやPagesは一例でほんとに聞きたいのはBlazorのほうね

例えばBlazorSeverはDataフォルダのXXXServiceの数分Program.csでAddSingletonしてるが
あれも100Service作ったら100回するのか?
チームで開発してたらみんなProgram.cs触りまくることになるし
なんだか現実的ではないような。

そもそもServiceもどの単位でつくればいいんだろ。
モデルの数だけ?
2020/11/22(日) 12:59:40.95ID:bLh5qcao
ファイル増えるのが嫌なら自分でビューエンジンを作ればいい 大変だけど

頑張れば razor 使ったままで
ビューファイルをデータベースからロードして中身も構成し直すとかできるかも
2020/11/22(日) 13:03:24.97ID:abaPzBFv
>>8
Blazorとかあまり関係ないAsp.netの基本じゃないかそれ?
アセンブリ単位でのサービス登録、リフレクションを使ったサービス登録、サービス登録のサブモジュール化、などいくらでも手段はある
2020/11/22(日) 13:05:55.19ID:bLh5qcao
>>8
そういう場合ばかり普通別のファイルにメソッドなり新しいクラス作るなりして
そこにサービス追加するコード書くんじゃないの
2020/11/22(日) 13:12:52.05ID:nWFJksTe
>>3
どっちかというと、
Blazor基地外が他スレで暴れてるんだけどな。
それでこのスレに注目が集まってる。
2020/11/22(日) 13:17:15.75ID:vrdBpsCk
>>10
そうなのか
知識不足ですまん
じゃあServiceはカテゴリごとに別プロジェクトで作成して
そのdllをAddSingletonしたらいいのかな
2020/11/22(日) 13:21:22.95ID:vrdBpsCk
なんとなくカテゴリごとにBlazorServerのプロジェクト作るのかなと思ってたんだが
まとめてIISなりにデプロイする方法がわからんかった。
2020/11/22(日) 13:33:44.46ID:abaPzBFv
>>13
やり方は色々ある
うちのやり方だとまずステレオタイプで分けて、ジェネリック型の登録、リフレクションで登録、個別に登録と段階分けてして登録してる
で、それをIServiceCollectionの拡張メソッドでラップしてUseXxx(オプション)の形式で公開
2020/11/22(日) 13:51:05.25ID:vrdBpsCk
>>15
なるほど
サンプルくれ
2020/11/22(日) 14:01:22.68ID:bLh5qcao
.NET Core で作られてるオープンソースのCMSがあるから
そのソース見ればいいと思う
2020/11/22(日) 14:15:18.33ID:ujQ9d+0r
ここ見る限り簡単さで売ってるフレームワークじゃないみたいだな。
他の探すわ。
2020/11/22(日) 14:28:03.57ID:vrdBpsCk
>>17
ありがとう
探してみる
2020/11/22(日) 14:42:21.15ID:abaPzBFv
>>18
Reactより単純だよ
2020/11/22(日) 17:58:24.06ID:NUTvM1Lb
純粋にBlazorの話がしたい人はこちらに移動してくださいね

【本命】Blazor スレ2【真打】
https://mevius.5ch.net/test/read.cgi/tech/1606028377/
22デフォルトの名無しさん
垢版 |
2020/11/23(月) 02:43:30.92ID:WFPhqmL6
>>21
のスレはスタンドアロンでBlazorを使う場合のみのスレ

ここはASP.NETがバックエンドに絡む場合にもOKのスレ
2020/11/23(月) 07:21:58.63ID:con/o1/6
スタンドアローンでBlazor使うのってどういうケースなんだ?
ゲーム?
あ、電卓か。
2020/11/23(月) 08:37:48.72ID:UgGRFwp8
>>22
いやいやBlazorだってASP.NETの中のピースなのでその理論はおかしい
25デフォルトの名無しさん
垢版 |
2020/11/23(月) 08:51:36.23ID:WFPhqmL6
>>23
データを全部ローカルに持ってるアプリ
サーバーレスで使えるゲームとかもそうだな

>>24
真打スレの1が頭おかしいからしょうがない
ASP.NET野郎とか言い出してASP.NETの話題を極度に嫌ってる

難癖としかいいようがない
単純にポエムっぽい気持ち悪いテンプレ1を変更されてキレてるんだろう
26デフォルトの名無しさん
垢版 |
2020/11/23(月) 08:55:59.65ID:WFPhqmL6
>>1
誤解のないようこちらにも書いておくけど
前スレと扱ってるテーマは何も変えてない。

本命、真打とかいういらないスレタイのワードを消して検索にかかりやすくした
気持ち悪いポエム系テンプレをなくした
これだけ。改善しかしてない
2020/11/24(火) 00:14:25.35ID:EBaS3Lgi
あっちの>>1はいろいろとあたまおかしい
せっかくだからあっちから出てこないでもらいたい
28デフォルトの名無しさん
垢版 |
2020/11/24(火) 20:21:06.22ID:VvBbDMQG
BlazorはASP.NETと関連性が高いしASP.NETの話題が出るのは避けられない。
こっちは前スレの実態どおりに、ふつうに使っていきましょう
2020/11/25(水) 18:39:02.03ID:zFotDvmS
asp.net mvcとblazorを混ぜこぜにすることってできるんだろうか
asp.net mvcで作ったアプリを全部blazorに変更する必要はないんだが
一機能だけ複雑怪奇なUIなのでBlazorで作りたい
2020/11/25(水) 19:11:12.24ID:89i//6R1
>>29
できるよ
31デフォルトの名無しさん
垢版 |
2020/11/25(水) 20:21:13.57ID:imttWao4
>>29
どっちのBlazor??

複雑なUIはXamarin.Formsが最適解だとおもうわ
速いし、開発も楽
2020/11/25(水) 20:44:21.95ID:zFotDvmS
いやすでにMVCのWEBアプリで出来てるのにいきなりその機能だけザマリンになったら困る…
2020/11/25(水) 20:44:45.21ID:zFotDvmS
あ、BlazorServerかな…
楽な方でいいんだけど
2020/11/26(木) 01:20:30.80ID:OS71rNiZ
つーか、前スレからxamarin推しのアホが居着いてるけどいい加減控えろって
2020/11/26(木) 01:49:05.56ID:O9/RzT4k
ASP.NETの話題禁止のクソスレに書き込んでしまいました
VPSを借りて、Linux上にasp.net core(?)をインストールすれば、BlazorServer
が普通に使える様になるのでしょうか?
36デフォルトの名無しさん
垢版 |
2020/11/26(木) 03:24:06.62ID:+DwRTiUz
>>34
良いものを勧めて何が悪い
nativeなら別にXamarinじゃなくてもいいが、
ここはMSの技術のスレだから俺なりに配慮してMSのXamarinを書いている
Blasor Wasmが現時点でムリゲーなのは触ればわかる
37デフォルトの名無しさん
垢版 |
2020/11/26(木) 03:33:19.75ID:+DwRTiUz
>>35
用途と規模、同時接続数は?
ASP.NETの話題禁止のクソスレではレンタルサーバーとか
VPSとか勧めてた人いたけどよっぽど小規模じゃないとアウトだと思う

Blazor Serverはserver-sideで多くの仕事するから
スペックがしょぼい共用のServerは適さない。
専用にハード用意してでオンプレミスか、
その運用ができないならAzure使ったらいいと思う。
2020/11/26(木) 08:20:06.17ID:a2VDJR7j
>>36
その前にザマリンってブラウザ上で動いたっけ…

>>37
企業内でしか使わない、同時接続はせいぜい100くらいかな
この手の使い方ならBlazorSever一択な気がする
wasmはServerが選択できないようなシチュエーション、不特定多数が使うゲームとかで使う感じ

しかしBlazorServerってパフォーマンスについてはほんとに未知数。
作ってみて全然ダメなんてなったら総スカンだよ
だれかややこしい画面100機能くらい作って実験してみてくれ。
後世まで讃えられるよ。
2020/11/26(木) 12:21:32.51ID:OS71rNiZ
ザマリン野郎はただのハッタリ詐欺師よ
どこかの派遣先でちょろっと触った事がある程度の経験しか無い癖に、さも分かってるかのように騙る馬鹿
2020/11/26(木) 12:55:56.37ID:a2VDJR7j
ザマ郎め…
41デフォルトの名無しさん
垢版 |
2020/11/26(木) 13:10:39.86ID:+DwRTiUz
>>38
nativeはブラウザで動かないからこそいい。

ブラウザの悪いところの制約をうけない。
CSSとhtmlでUIつくるする必要ないから生産性高くて動作もはやい
XamarinならJSだけでなく、めんどくさいCSSとhtmlも意識しなくてよくなる
2020/11/26(木) 14:47:34.74ID:a2VDJR7j
>>41
いやブラウザ上で動かすと言うのが要件です
2020/11/28(土) 21:32:26.57ID:VVrnAQDV
エセザマ野郎が本家Xamarinスレで暴れて鬱陶しいんで、きちんとここに隔離拘束しといて!
2020/11/29(日) 12:22:21.90ID:t4883+oA
ザマ郎め…
45デフォルトの名無しさん
垢版 |
2020/12/01(火) 16:13:35.40ID:KJeyTCS5
Blazorwasmって、ローカルで動かしてみたり、認証のいらないアプリを書いたりするには良いけどさ
認証を入れて安物VPSに配置すると、Pingが高いせいかめちゃくちゃ遅くなっちゃうのな
Azureを契約したら認証を使ってもまともなスピードで動くのか気になるところなんだけど、どっかで体験できるサイトってないかな?
2020/12/01(火) 16:55:46.55ID:TBput4Ui
認証の実装次第じゃね?
2020/12/01(火) 17:08:37.83ID:mXq+MLFh
>>45
azureのfreeプランで体験すればいいんじゃないの
48デフォルトの名無しさん
垢版 |
2020/12/01(火) 17:11:08.20ID:EvEZBXUJ
>>45-46
認証どの方法でやってるの?認証というかDBがクソ遅いんでは?
ストレージと契約プランは?

自分の固定回線でサーバー立ててオンプレミスでパフォーマンス
見てみればいい。
モバイル回線からアクセスとかして実際のローディングの実感つかんだり。

VPSとかレンタルサーバーとかスペックがとにかくしょぼい
維持費下げて快適なサーバー作るにはオンプレミスでやるべき
2020/12/01(火) 17:13:55.57ID:EvEZBXUJ
オンプレミスなら占有できるし、ストレージもSSDとか使える。
安いVPSとかいまだにHDDだったりとにかくスペックがゴミだぞ
大手クラウドはましだけど維持費高い
2020/12/01(火) 18:48:51.15ID:WP+WGTcn
誰かと共有してるサーバーなんて、
誰かの処理が多かったら、自分の処理は少なくなる

特に安い所は、共有者が多いかも
2020/12/01(火) 19:18:59.55ID:mXq+MLFh
AWSのlargeインスタンスに本番デプロイしてるけど特に問題なしだな
2020/12/01(火) 19:36:41.77ID:+qF/uZ2f
>>45
webassemblyはローカルで動くんだから
VPSは関係ないでしょ

関係あるとしたら必要以上に通信してるとか
設計の問題でしょ
53デフォルトの名無しさん
垢版 |
2020/12/01(火) 21:47:54.47ID:EvEZBXUJ
>>52
関係あるに決まってるだろう
最初のローディングはサーバーからのダウンロードだし
認証やるならDBの速度にひっかかる。
スタンドアロンで完結するアプリなんてほとんどない
2020/12/02(水) 00:16:56.71ID:3xGcwmKY
もしかしてクライアントからDB直接アクセスしてんのか
55デフォルトの名無しさん
垢版 |
2020/12/02(水) 00:53:22.98ID:EgVjsFYE
認証使ってるのか書かれてないから不明だが認証は通常DBを使うし
安いVPSだとApplication Serverと同一のhostにDBもあるし、
たくさんのユーザーが同時使用するから遅い。
共有サーバーでストレージがHDDだとすごく遅くなるのは明らか
2020/12/02(水) 01:11:28.10ID:YoQmKH+u
認証のDBアクセスが重いとか、どんだけ高負荷な有名サービスだよ
2020/12/02(水) 02:35:00.10ID:ZTMuPDF1
>>56
それは思った。
そんなサイトは世界でも100も無いのではないかと思うのだが。
58デフォルトの名無しさん
垢版 |
2020/12/02(水) 06:18:58.14ID:EgVjsFYE
>>56-57
web appで一番ボトルネックになるのは
RDBってのは昔からふつうのことだぞ
だからこそRubyやJSなど低速な言語のサイトもけっこうある。
ボトルネックが言語よりもDBになることが多いからだ

あと通常、認証後にもリソースの権限チェックが行われる。
トークンベースだったとしてもそこの計算量が多くCPUにも負担がかかる。
DBが高負荷のときはCPUリソースも余裕がない可能性高い
59デフォルトの名無しさん
垢版 |
2020/12/02(水) 06:22:57.09ID:EgVjsFYE
>>56-57
どんだけ有名サービスだよってことじゃなくて、
レンタルサーバー、VPSがどんだけ詰め込んでんだよって話
限界まで詰め込みすぎなわけ
共用サーバーは膨大な数のWordPressとかが動いてる

同一サーバーの契約者数、アクセス数が多いから
自サイトのアクセス数の絶対数が少なくても性能が足りなくなる。
オンプレミスにするかまともなクラウドを使えばいい
2020/12/02(水) 08:22:53.00ID:+nSH4YQS
Blazor Serverの仕組みって一般的にはなんと呼ばれる技術なのか分かる人いますか
SignalRでSPAを実現してるやり方って他の言語やフレームワークにもある?
MS系に詳しくない人たちに説明したい。
2020/12/02(水) 10:29:09.09ID:yJY81L7A
サーバー不要の方式がSPA
62デフォルトの名無しさん
垢版 |
2020/12/02(水) 11:01:43.03ID:EgVjsFYE
>>60
エンジニア向けの説明?
MS技術に詳しくない人ならSignalRも知らないはず

類似のSPA技術はないだろう。
ほかのframeworkはなるべくステートレスにやろうとするが
Blazor Serverはステートフルでサーバーが多くの仕事をする。
しかもJSを書かない
2020/12/02(水) 12:25:38.82ID:+nSH4YQS
古くなったWebFormの移行先の技術選定で、社内のお偉方に説明する必要がある。
Serverの方は既存コードから再利用性が高そうだから使ってみようと思ったが
こんな技術が身についても潰しが効かないし、若手が嫌がりそう。

wasmも使い物にならんし
ts+Reactとかに思い切って移行するほうがいいのかもしれないと俺は思い始めた。
2020/12/02(水) 12:31:47.85ID:yJY81L7A
既存のクソコードを一掃する
チャンスでもあるわけだ。
2020/12/02(水) 12:35:05.78ID:4ZukVyfA
>>63
BlazorとWebFormsは全然違うからダイレクトに移行するメリットはないよ
WebFormsをリファクタリングしてAspNet Core Webapi+WebFormsの形に落とし込む
その後WebFormsを好きなフレームワーク乗せ変える
移行先のフレームワークとしてBlazorを選んでもいい
これが移行の王道
2020/12/02(水) 12:49:23.65ID:+nSH4YQS
>>65
なるほどなあ
しかしwebapiの設計がまじでわからん

みんな本当にget,put,post,deleteのRESTの原則に従って作ってるのだろうか。

バッチ処理とかどうしてるんだろう
2020/12/02(水) 12:53:18.42ID:yJY81L7A
>>66
大分まえから普通がRESTよ。
つい最近もオレオレREST?API作ってきたベンダーが集中砲火。
2020/12/02(水) 13:54:47.31ID:vDg6xkSY
REST, GraphQL とか

バッチ処理は、AWS Batch, Lambda とか
69デフォルトの名無しさん
垢版 |
2020/12/02(水) 14:00:38.77ID:EgVjsFYE
>>63
思い切って移行ならXamarin.Forms
速くて使いやすくて喜ばれる
スマートフォンアプリ作れるようになるしエンジニア教育の
面でもベストだわ
少し待ってMAUIでもいいとおもうが。

>>65
AspNet Core Webapi+WebForms
はいったんレガシーとミックスさせる方法だから、
無駄にコストと手間かかりすぎだと思うわ
新規で作って切り替えるほうが楽だし現実的
2020/12/02(水) 14:02:40.02ID:7ARpvJUU
Visual Studio使ったら難しいこと考えなくてもC#でREST API生成できるやん
2020/12/02(水) 14:03:35.26ID:7ARpvJUU
Xamarin野郎来たからBlazor本スレに戻るわ
72デフォルトの名無しさん
垢版 |
2020/12/02(水) 14:09:13.66ID:EgVjsFYE
>>71
新しいことを学べない人には無理だろうな
Xamarin.Formsという言葉だけで拒絶反応を示す

スタンドアロンスレに戻りなw
2020/12/02(水) 14:28:48.10ID:u23z8tnt
あ、知識・スキル共に皆無なことが露呈してXamarin本スレから逃げ出した人や
こいつこんな所におったんか
2020/12/02(水) 15:32:11.71ID:3xGcwmKY
>>66
今どきRESTだけなんて無いよ
クエリスタックはRESTとGlaphQLの組み合わせ
コマンドスタックはgRPC
これが今のスタンダード
2020/12/02(水) 16:08:55.57ID:yJY81L7A
>>74
gRPCが今のスタンダード?

2020/12/02(水) 16:10:32.50ID:u23z8tnt
MagicOnionマジおすすめ
2020/12/02(水) 18:02:17.85ID:+nSH4YQS
昔SOAPを使っていたのもあって
なかなかREST APIに馴染めない
に加えてあのURIを文字列で記述するのが嫌
クエリパラメータも文字列なのが嫌
スペルミスしてたら動かないとかつらすぎる。
(あんまり使ったことないから間違ったこと書いてたすまん)

せっかく同じC#なんだから型安全がいい
おそらく自分にはgRpcの方が馴染みそう

しかし一番馴染むのはBlazorServerのXXXService()
あんな楽なものはない。
だからBlazorServerが魅力的なんだよおおおお
惜しい
2020/12/02(水) 19:39:41.09ID:3xGcwmKY
>>75
そだよ
コマンドスタックは現状これしかない
2020/12/02(水) 19:44:30.50ID:yJY81L7A
>>78
スタンダードの意味は?
80デフォルトの名無しさん
垢版 |
2020/12/08(火) 10:45:05.78ID:p9ADjhn4
何をやっているか知りたいので空のプロジェクトから解説しているサイトないですか?
dotnet new web
2020/12/08(火) 16:14:08.34ID:11kT5JjZ
>>80


dotnet new webっていうコマンドが
なにをやっているか知りたいってこと?
2020/12/08(火) 16:23:50.99ID:aYlokb/a
>>81
もんもー?

dotnet new web後の流れが知りたいってことでしょ
2020/12/08(火) 16:43:22.34ID:C+tXhbuq
本ならあった気がするがサイトは知らんな
2020/12/08(火) 16:45:34.63ID:v7gdDVm9
スレチ
2020/12/08(火) 17:11:29.09ID:E4wQPgos
文もう
2020/12/08(火) 18:21:19.48ID:11kT5JjZ
>>82
それってテンプレートから作ったものを
読めばいいんじゃね
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況