ふらっと C#,C♯,C#(初心者用) Part152

■ このスレッドは過去ログ倉庫に格納されています
2021/08/25(水) 19:44:16.81ID:tgvUkE6r0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part151
https://mevius.5ch.net/test/read.cgi/tech/1621129559/
■関連スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/

■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
https://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/10/23(土) 21:32:02.01ID:XQgx1Jtx0
>>541
Visual Source Shredderは時代の最先端を行っていたからな
2021/10/23(土) 21:33:13.97ID:kf/JMh+N0
githubじゃないからプルリクないからね
2021/10/23(土) 21:40:39.66ID:95J4TOlU0
>>532
TortoiseGitは違うんだなあ
なんで同じような実装にならんのか知らんけど
2021/10/23(土) 22:02:40.62ID:vvH281kC0
俺はgitkrakenとbitbucket使ってるな
2021/10/23(土) 22:08:57.77ID:AfNPPBvTM
今のGithubはMSに買収されてプライベートリポジトリが無料無制限となり、VisualStudioとも強力に統合されている
Bitbucketはもう存在価値ないよ
2021/10/23(土) 22:14:27.13ID:KWoyfano0
>>549
> 今のGithubはMSに買収されてプライベートリポジトリが無料無制限となり

うひゃー、そうだったのか
VS使ってて「こんなにGithubとMSがツーカーでいいのか、おい?」って思ってたところだ
2021/10/24(日) 00:34:47.66ID:wDHU0w6C0
vscodeとVSで微妙に違うのでたまに混乱する
自分が使ってるVS側が古いだけか
2021/10/24(日) 00:35:11.93ID:yMSDmryK0
>>549
VisualStudio Onlineは最初から5人まで無料で容量無制限だったから使い続けているけど、Githubも同じ様になってるんだな
2021/10/24(日) 02:55:56.36ID:TafVW45/0
>>552
同じじゃないよ、人数制限なんかない
554デフォルトの名無しさん (ワッチョイ 2973-RNtY)
垢版 |
2021/10/24(日) 03:07:07.36ID:RTPiU58z0
githubでプライベートリポジトリがいいっての。

vs使ってるんだし、将来一部をazureにするにせよ、
そのままデスクトップformだけにせよ、
あるいは.net6などに移行するにせよ。
vsだけでなく、vscodeも併用するようになるにせよ、
何も変えず現状維持でも、
可能性高い将来の環境追加を考慮しても
マイクロソフトのgithubが一番だっての。
2021/10/24(日) 03:12:32.82ID:gHdzMXrt0
タダでMicrosoftにソース提供するようなもんだな
2021/10/24(日) 04:29:04.25ID:Mrf21O+v0
vs使ってないな rider avaloniaやってるわ
2021/10/24(日) 05:41:48.22ID:1SVJ9Wvp0
>>536の会社のポリシーがわからんからなんとも言えんが普通の会社だと社内開発のコードをgithubに上げるのは色々まずい気がする
2021/10/24(日) 07:39:32.01ID:rcC2nhnQ0
>>557
素人コードで手間を省くのにコード内に書いていることも多いので
とてもクラウド上にはあげられないです
ローカルでgitだけ(githubは使わない)使うという理解ですが
あってますかね・・・
勉強はじめましたが、ローカルだけに絞るとなかなか記事が少ないですね
githubをプライベートにってのも、設定ミスで実は見えてましたなんてことが
ありそうでちと怖いです、気づいて指摘してくれる人も周りにいないので

でも企業とか外部に情報出さないのが鉄則のように思うのですが
githubが多用されていることが素人には不思議です
有料にしてプライベートが基本なんですかね
2021/10/24(日) 07:59:32.44ID:4IdS0kipM
さすがに現実を知らなすぎでは
某誰でも名前知ってる日本の大企業の社内システムのソースは全部Githubのプライベートリポジトリにある
Office365とGSuiteも契約して使ってるから、ソースに限らずメールや資料は全部MSとGoogleに預けていることになる
社内システムや顧客向けシステムの殆どはAWSとGCPで運用している
こんなの全然珍しい話じゃないよ
2021/10/24(日) 08:37:25.88ID:RTPiU58z0
設定ミスで実は見えてましたーとかないから...
プライベートリポジトリはpritateとマークが付く。

それでも不安ならreadme.mdとか1つだけアップして、
githubからログアウトして
該当のリポジトリをURLで見ようとすればいいだけ。
見れないことが確認できれば「該当のリポジトリはちゃんとプライベートになってる」から使っていけばいいだけなんだから。
2021/10/24(日) 08:38:50.48ID:RTPiU58z0
あと上に何回も書かれてるがプライベートリポジトリは無料ね。
2021/10/24(日) 09:22:52.30ID:1SVJ9Wvp0
>>558
> でも企業とか外部に情報出さないのが鉄則のように思うのですが
たいていの会社の多くのプロジェクトはそうだと思う
モノによっては特定の部屋から出しちゃダメとかすらあるしね
ただ逆に大学と共同研究開発とかでgithub使うとかもあったりする

> githubが多用されていることが素人には不思議です
多用されてるかどうか知らんけど使ってる奴の(ネット上の)声がでかいのは確かだと思う
2021/10/24(日) 09:29:28.02ID:1SVJ9Wvp0
>>560
> プライベートリポジトリはpritateとマークが付く。
こんな奴が設定ミスで~ とか言っても説得力 "0" やなw
2021/10/24(日) 09:56:46.55ID:xkEpPvQL0
弊社クソデカJTCだけど、ソース管理サーバーはセルフホストしてるぞ。
社内システムも各種そういうクラウドもあるけど、国内でも仮想サーバー立ててそっち使ったりもしてる。
565デフォルトの名無しさん (ワッチョイ 62eb-SH1g)
垢版 |
2021/10/24(日) 10:37:09.53ID:sJguVuMQ0
Azure導入してるところはAzureRepos使ってるんじゃないか
2021/10/24(日) 11:16:43.06ID:cSH7DcWrM
クラウド利用ならAzure DevOps Service
オンプレミスならAzure Devops Server
Expressは同時接続5ユーザまでだけど個人利用のライセンスは無償
WindowsServerでなくてもクライアントOSにもインストールできる
個人利用ならVisualStudioCommunity + SQL ServerExpress + DevOpsServerExpressを1台の開発マシンにインストールすればすべて無料で利用可能
2021/10/24(日) 12:23:11.77ID:S8Kn9Fh4d
仕事で普通にgithubのプライベートリポジトリ使ってるがな
一カ所だけで開発してるわけじゃないし
2021/10/24(日) 12:30:18.47ID:ZGWhrjvVM
Azure DevOpsはGithubに統合していく方針でしょ
Github Actionsが名実共にPipelinesの後継だしな
2021/10/24(日) 13:15:47.96ID:FpGB46a40
ギフハブ以外に選択肢なんてほぼ無い時代に何言い争ってんねん
強いてギフハブ以外にあるとしたらBANされづらいギッラボがハッキングツール置き場として選択肢上がってくるくらいだわな
2021/10/24(日) 13:30:02.12ID:XTgpqttmM
GitHubではオンプレミスのDevOps Serverの代替にはならない
クラウドのDevOps Servicesの位置付けは微妙なところだね
2021/10/24(日) 13:44:33.37ID:aK0/ZU7vd
>>570
github enterprise使えばオンプレでgithub actions使えるのでは?
2021/10/24(日) 14:04:22.98ID:kH6+iFBO0
>>558
今のVS(Ver.16.11)は既存のソリューションのローカルgitリポジトリを作るのは簡単だよ
gitメニューのgitリポジトリの作成でローカルのみを選んで作成するだけ
それを実行したらソリューションフォルダの中に.gitフォルダが作成される
2021/10/24(日) 14:06:20.69ID:oKiLV6KP0
なおファイル名変更により履歴が吹っ飛ぶ可能性あり
2021/10/24(日) 15:15:45.24ID:yMSDmryK0
.gitignoreをちゃんと設定しないと後々面倒なことになるね
ググってコピペで十分だが
2021/10/24(日) 18:09:54.87ID:TafVW45/0
>>570
GHES知らないのかよ
2021/10/24(日) 20:08:37.56ID:kH6+iFBO0
>>574
VSでリポジトリを作成すればVS向けの.gitignoreも自動生成されるよ
2021/10/25(月) 03:37:56.42ID:B1mDILiv0
プログラムソースはgit、リソースはsvn管理が一般的だろ
githubとか使わないでも、ローカルのHDDにリモートリポジトリ作れるよ
gitクライアントはSourceTreeが使いやすくて好き
2021/10/25(月) 04:39:51.46ID:OmnyYW+Y0
source treeはいいね
単体リポジトリだけならvsのgit機能で事足りるんだけど
vsで複数リポジトリを統合管理できたらsource treeからまるごと乗り換えられるんだよなぁ
2021/10/25(月) 08:01:40.36ID:VUzDuzVId
>>577
リソースとは?
2021/10/25(月) 08:49:47.90ID:xKyFV7r10
ドキュメントとソースを別管理にするとどのドキュメントのバージョンがどのソースのバージョンに当たるのか普通にわかんねーぞ
2021/10/25(月) 08:51:01.02ID:xKyFV7r10
そういう管理してるとこあったけどバカが知ったかで管理者気取ってるだけで問い詰めたら全く理由らしい理由なかった
2021/10/25(月) 08:58:14.84ID:8GMjQ8lSD
git教とsvn教の両方から叩かれるソリューション
2021/10/25(月) 09:09:13.72ID:erjmSvlVd
趣味でC#書いてるだけだからか、Githubに触れる理由が見当たらない。
2021/10/25(月) 10:07:16.31ID:wUJQzT+GM
趣味でもOSSのライブラリのソース見たりすることはあるだろ?
それすらしないならさすがに無価値なんで存在を無視して差し支えない
585デフォルトの名無しさん (ワッチョイ 895f-/PVD)
垢版 |
2021/10/25(月) 10:27:38.27ID:ZD0F2bR/0
素人が価値のないコードを必死に守ろうとするのは滑稽だな
そんなもん全公開でいい
2021/10/25(月) 10:32:51.24ID:xKyFV7r10
そして流出する個人情報
2021/10/25(月) 10:33:22.77ID:xKyFV7r10
と顧客データ
2021/10/25(月) 11:59:38.34ID:nDrpBVJJ0
素人だろうとデータを軽んじてる時点で社会人として失格だわな
そういう奴が個人情報をお漏らしする
2021/10/25(月) 12:16:16.74ID:SCXNLEsY0
なんでソースコードの中に個人情報が入るのかがまず分からん
2021/10/25(月) 12:41:29.79ID:YTvXZGZn0
個人情報はともかく、APIのkeyをベタ書きして…というしょうもないミスがまれによくあったりするからなぁ
2021/10/25(月) 12:46:30.61ID:gLiJ8R3D0
>>589
メルカリに聞いて
2021/10/25(月) 13:08:09.93ID:xKyFV7r10
>>590
多くのサンプルがそうだからな
じゃあどこへ置くんだよっていうと結構難しかったりする
2021/10/25(月) 13:33:24.90ID:B1mDILiv0
>>579
リソースはpngとかのいわゆるバイナリファイルかな

>>580 >>581
gitはバイナリファイルの差分管理ができないからsvnで管理する
そりゃgitで全部管理できたら楽だがプロジェクトが大きくなったらトラブるよ
個人開発レベルのサイズならgitで済むかもだが
svnとgitのバージョンのずれは運用で何とかするな(日時とか見てそれぞれ戻せば別に問題ない)
どうしても一緒に扱いたいなら別のバージョン管理システム使うかだね
(perforceとか)
2021/10/25(月) 14:31:51.64ID:/6wlUeg20
大きすぎるものは分割しよう
2021/10/25(月) 14:41:27.32ID:6t6sXtph0
バイナリーの差分なんて必要ないだろ
2021/10/25(月) 15:51:29.41ID:TRf/J2SsM
>>593
> svnとgitのバージョンのずれは運用で何とかするな(日時とか見てそれぞれ戻せば別に問題ない)
個人的にはsvnの方が慣れてるのでいまだにsvn使ってる俺ですらそれには賛成できんわ
2021/10/25(月) 16:46:51.41ID:CL1mjvO/0
>>593
svnなら差分管理できるわけ?
2021/10/25(月) 17:04:23.24ID:6t6sXtph0
でかいバイナリー扱うならgit LFS使えばいいんだよ
2021/10/25(月) 18:13:57.18ID:B1mDILiv0
git LFS は俺が選定した当時は問題ありそうだったから使わなかったね
今は良く分からんけど使えるなら使えばいいんでない?
使ってないのにググった結果で適当言ってるだけなら怖いけど
2021/10/25(月) 20:26:36.15ID:5+qPFldj0
知りもしないのに知ったかするのが怖いってのは自己紹介かな
2021/10/25(月) 21:31:24.47ID:3IW01+t90
>そりゃgitで全部管理できたら楽だがプロジェクトが大きくなったらトラブるよ

とりあえずこれ、gitになにか問題があってトラブるって言ってる?どんな問題?
2021/10/25(月) 21:42:12.82ID:JVD00Zwu0
まぁ、100Mのものが無いだろうと思ってたら、
100M超えてるのが2つあって手戻しとかはあるな。
個人でプライベートだと、コンパイル結果や中間ファイル消したりもしないし。

拡張子でざっくり消せればいいのだが、そうもいかず名指しでignore指定。
ほほ間違いなく後手対応になる。
603デフォルトの名無しさん (ワッチョイ 3901-z4aL)
垢版 |
2021/10/25(月) 22:14:20.77ID:3O35Ls500
それはgitを使いこなせてないだけでは
2021/10/25(月) 22:22:36.05ID:6t6sXtph0
Visual Studioが最初に生成する.gitignore使えば生成ファイルが除外されてるしな
2021/10/25(月) 22:23:37.30ID:xKyFV7r10
>>593
ドキュメントとソースのバージョンが一致しなくなっちゃうより問題あることって起きる?
2021/10/26(火) 07:36:22.56ID:7iLVX7OB0
https://sites.google.com/site/nantonaku999/home/fairu-cang-ku2/fairu-cang-ku-2

このようなニコニコ動画弾幕ツールを作るにはC#を学習すれば良いのでしょうか?
参考になりそうな書籍などありましたら教えて欲しいです
プログラミング自体入門者です。
2021/10/26(火) 09:53:38.01ID:nH/QWLAm0
gitとsvnを併用運用するのって良くある環境だと思ってたけどこんだけ突っ込み入るならそうでもないのかね
gitは大きなバイナリの扱いが苦手ってのはググれば分かるんだから、どれだけ問題あるかとかは自分で判断してくれ
単にリポジトリが大きくなるとかクローンに時間がかかるとか重すぎてタイムアウトするとかそういうのだよ
もちろんプロジェクトによっては問題ないだろうから自己判断だね
2021/10/26(火) 11:00:08.19ID:4Npi0ceqM
>>607
俺の職場も併用だし他社でも似た話を聞くよ
そんな気にすることでもない
2021/10/26(火) 11:22:27.27ID:M4zViq7X0
>>606
だいたいどの言語でもできると思うけど、使いたいサービスや前例がある言語を選べると良いとおもう。
それがわかんなかったら、好きな言語を学びながら作りたいものの完成を目指すといいよ。
「この機能は弾幕のここに使えるな…」みたいな感じで勉強していくとモチベも続くんじゃないかな
書籍はいらないよ、サイトで学習するだけで十分。
c#ならここでいい
https://ufcpp.net/
2021/10/26(火) 12:20:24.90ID:oGvcWZ0b0
ゲーム系、特にコンシューマ機系はほぼ確実に混じってると思うぞ。
2021/10/26(火) 12:45:54.68ID:QBPvv+qx0
>>606
それWinformsアプリケーションだよ、これから新しく学ぶには良い題材と思えないな
ちなみに需要があるなら、とっくに新しいソフトが作られていて、利用者もそっちへ移行してるものじゃないかな
古いものを仕方なく使う場合、それ相応の理由がある。で、それを確認できないと何とも言えないね
2021/10/26(火) 13:14:47.13ID:Lw2w7Q/c0
ニコ動は弾幕システムも含めて他所のサイトから丸パクリだからな
元の開発者知ってるだけに今見てもムカつくだけだわ
初期の開発はC#だったよ
2021/10/26(火) 13:26:21.73ID:oGvcWZ0b0
最初はWinformの4.8 frameworkの方が話しが単純だから学習に向いてるよ。

WPF使うにしても最初は前部ビヘイビアで書く方が理解も早い。
一人で5年と経験もない人がWVVMとかやっても
マイナスにしか働かないし。
2021/10/26(火) 18:25:03.57ID:Cq2VKdsO0
>>609
ありがとうございます
C#の基礎的なコンソールの文法は覚えれたと思うのですが
どうやって弾幕アプリを作っていけばいいのか検討もつきません
アプリの本を読んでれば作れるようになるんでしょうか?
2021/10/26(火) 18:30:44.74ID:doQK1NHm0
>>613
前部ビヘイビアがさっぱりわからんが、コードビハインドのことかな?
2021/10/26(火) 18:39:05.43ID:oe4Dvohb0
>>613
色々出鱈目だのう
4.8 framework→.NET Framework 4.8
WVVM→MVVM
前部ビヘイビア→全部コードビハインド
2021/10/26(火) 18:47:28.13ID:jDc7PZeY0
>>616
前部ビヘイビアよく分かったなw
2021/10/26(火) 19:42:14.09ID:QBPvv+qx0
添付ビヘイビア「呼んだ?えっ違うの?」
2021/10/26(火) 19:57:08.91ID:b4h9wXoa0
臀部ビヘイビア「やっと出番か」
2021/10/26(火) 21:09:04.64ID:Ui9ZIWjk0
玄武ビヘイビア「・・・お呼びでない?」
2021/10/26(火) 21:17:56.76ID:doQK1NHm0
何が衝撃的かと言えば、キャリア5年を素人と扱いしているということは
彼のキャリアは推定10年以上ってことだわ
2021/10/26(火) 23:31:49.78ID:QBPvv+qx0
設計3年、コーディング8年、デバッグ一生
2021/10/27(水) 00:21:15.63ID:VZtiuUQ4M
c#でディスクパーティションを削除したり作成したり自動化したプログラム作りたいんです。
それ系のサンプルコードを検索しても出てこないんですがc#では無理でしょうか?
2021/10/27(水) 00:22:54.43ID:dedb9OIKM
diskpartを呼べばいいだけ
2021/10/27(水) 00:48:40.58ID:ZEhE+cUi0
>>616はエスパーかな?
2021/10/27(水) 03:00:27.67ID:rdp8uLCI0
>>613
すいません
Amazonで.NET Framework 4.8 とかMVVMでググっても出ないんですけど
具体的にどういった本がそれに当たるのでしょうか?
Xamarin,VisualC#,WPF,ASP.Net,.NET5 といったものが多く出てきましたが
自分の目的にはどれがあってるのか…
2021/10/27(水) 07:39:12.09ID:Zj1idbQoM
>>623
WDKの資料を読みたまえ
2021/10/27(水) 08:59:15.27ID:avsNPLVxa
初学ならWinFormsでポトペタして作ればいい
2021/10/27(水) 10:17:17.06ID:K7fhVGwtr
6年ぶりにC#に戻ってきそう
といってもWinForm(VS2015)しかやっていなかったけどこの6年で何か変わった?
2021/10/27(水) 10:22:46.47ID:vOa3m8Ss0
>>629
未だにWinFormsが最善
2021/10/27(水) 10:58:51.03ID:K7fhVGwtr
>>630
安定のWinFormで安心した
2021/10/27(水) 11:05:07.82ID:GTsNGXih0
前よりはWPFに移行した人を見るようになったかな
2021/10/27(水) 11:09:47.31ID:7ixyZ+/H0
そういえばWinUI3とかどうなったんだろう
2021/10/27(水) 17:41:50.42ID:pB4OZ2bT0
WinUI3は今のところ使い物にならない
2021/10/27(水) 21:30:14.38ID:joAdtZnc0
ボソ Blazor
636デフォルトの名無しさん (アウアウウー Sa45-15yw)
垢版 |
2021/10/27(水) 21:52:40.16ID:D6YfKbcXa
WinFormの質問です
ラジオボタンはAppearanceボタンにした時、選択時のボタン色が薄い青?みたいな感じになるんですが、これを任意の色に変更することは可能でしょうか
可能であれば方法を教えていただきたいです
よろしくお願いいたします
2021/10/27(水) 22:34:36.35ID:zKX95qu20
FlatStyleをFlatにしてFlatAppearanceで設定する
638デフォルトの名無しさん (アウアウウー Sa45-15yw)
垢版 |
2021/10/28(木) 07:27:49.03ID:W4bPGGQba
>>637
ありがとうございます!
今日試してみます
2021/10/28(木) 22:50:14.27ID:Qh3rpV2+0
HttpClientのメッセージロギングしてデバッグしたいんだけど、Chromeの通信デバッグ並に完全に読み取る事って簡単には出来ない?

HttpRequestMessage request = new(HttpMethod.Post, url);
Debug.WriteLine(request);

これだとその後にCookieContainer等からセットされるヘッダは読み取れない訳だけど、実際に送られるリクエストメッセージを完全に読み取る方法ってあったりする?
2021/10/28(木) 23:12:06.60ID:1dRy5ZCM0
ひどらー
2021/10/29(金) 07:08:11.82ID:AWR3O7P4M
メソッドの引数がenumの配列なのに
enumの値渡してもコンパイルエラーにならなかった
直しておいてね
2021/10/31(日) 09:17:59.59ID:Cn8y59vU0
最近はパターンマッチング使えるしenum要らない子かなーと思ったらHasFlagがあるんだった
2021/11/02(火) 08:48:28.47ID:0cW+u2MrM
初歩的な質問ですいません
初めて非同期処理を書いてみたのですが、awaitを使用して非同期メソッドを呼び出してもその結果を待たずに処理が進んでしまいます

非同期メソッドを呼び出す側はasyncを付与しています
awaitを使用すると結果を待つ、いわゆる同期的な動作をすると解釈しているのですが認証が間違っているでしょうか?
またこのように処理が進んでしまう場合はどこ疑うべきでしょうか?
2021/11/02(火) 09:32:37.14ID:hduQM35N0
>>643
漠然とし過ぎてエスパーし辛いから、もうちょい具体的にコード(の一部)書いた方がレス付きやすいんじゃないかな
2021/11/02(火) 10:18:25.51ID:c2KuzBrA0
>>643
待つ相手の戻り値がvoidになってるんじゃないか。
async voidだとawaitしても待たないから戻り値をvoid以外にするか
await Task.Run(()=>this.hoge())とかにする
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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