!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part142
https://mevius.5ch.net/test/read.cgi/tech/1551908141/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
http://referencesource.microsoft.com/
-
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part143
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8861-gZI7)
2019/05/16(木) 19:28:06.27ID:s+6oZKe00382デフォルトの名無しさん (ワッチョイ bf63-KqSM)
2019/06/10(月) 19:50:13.10ID:bMUfCd/90383デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/10(月) 19:52:29.65ID:MrgpB0NP0 >>381
テストまでいってねっつのアホなん?
テストまでいってねっつのアホなん?
384デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/10(月) 19:55:32.78ID:MrgpB0NP0 抽象化されたソースから追えないゴミカスコードをどうやってコピペしたらいいですか?
インターフェース同じやつ片っ端から貼りまくればいいですか?
36っこありますね
→ウンコですね New!
インターフェース同じやつ片っ端から貼りまくればいいですか?
36っこありますね
→ウンコですね New!
385デフォルトの名無しさん (アウアウエー Sa93-gnfa)
2019/06/10(月) 19:59:23.27ID:+AzPxr5na コピペできないって悩むってことはやっぱり抽象化が正解なのか
いかに下っ端コーダーにコピペをさせないかがプロジェクト成功の鍵だからな
いかに下っ端コーダーにコピペをさせないかがプロジェクト成功の鍵だからな
386デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/10(月) 20:07:55.28ID:MrgpB0NP0 >>385
バカじゃん
まるごとコピペして名前だけ変えて放置だっつの
こんなキタネェコード付き合ってらんねーよ
1クラス1ファイルで書いてあるけどこんなゴミにこんなファイル数いらねーよ
Xxx.csに全部ツッコんでやった
まとめてゴミ箱だw
アンチパターン「マトリョーシカ」「たけのこの皮」「玉ねぎの皮」「マズイミルフィーユ」とか名付けたい
くだんねー薄皮クラス全部いんねっつーの
バカじゃん
まるごとコピペして名前だけ変えて放置だっつの
こんなキタネェコード付き合ってらんねーよ
1クラス1ファイルで書いてあるけどこんなゴミにこんなファイル数いらねーよ
Xxx.csに全部ツッコんでやった
まとめてゴミ箱だw
アンチパターン「マトリョーシカ」「たけのこの皮」「玉ねぎの皮」「マズイミルフィーユ」とか名付けたい
くだんねー薄皮クラス全部いんねっつーの
387デフォルトの名無しさん (アウアウエー Sa93-gnfa)
2019/06/10(月) 20:09:50.35ID:+AzPxr5na388デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/10(月) 20:37:44.89ID:MrgpB0NP0 逃げたか
389デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/10(月) 22:36:29.43ID:aFtuMg1K0390デフォルトの名無しさん (スフッ Sdd7-tCrF)
2019/06/10(月) 23:01:39.91ID:mjEnv2YNd391デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/10(月) 23:28:43.62ID:MrgpB0NP0 でも正直なんでこんな面倒臭いの?ってぐらい作ったやつのセンスが悪いよね
392デフォルトの名無しさん (ワッチョイ 895f-fuh5)
2019/06/10(月) 23:40:05.50ID:ZWxvLRT60 C#は Visual Studio のサポート機能が無いと、コード書ける気しないわな。
393デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/10(月) 23:57:56.14ID:aFtuMg1K0394デフォルトの名無しさん (ワッチョイ 3bad-DHjX)
2019/06/10(月) 23:58:17.24ID:s/X+Cj/I0 >>392
最近よくVisual Studio Codeで書いてるよ
最近よくVisual Studio Codeで書いてるよ
395デフォルトの名無しさん (ワッチョイ 9347-tCrF)
2019/06/11(火) 00:20:18.49ID:eYjHCkmz0 >>393
お前が何を必要としてるかまでMSは知らないから仕方なくね
お前が何を必要としてるかまでMSは知らないから仕方なくね
396デフォルトの名無しさん (アウアウエー Sa93-Yhjd)
2019/06/11(火) 00:27:16.57ID:KO5Z5H7da WinFormsのコントロール全般だけど、MSとしては>>390程度のことは
自前で継承して作り込んで使ってくれっていうスタンスだからなあ
(MSDNのドキュメントもそれ前提の書かれ方だし)
作りこむのが面倒であればGrapeCityとかが売ってる高機能なコンポーネントを使えばいいわけだし
自前で継承して作り込んで使ってくれっていうスタンスだからなあ
(MSDNのドキュメントもそれ前提の書かれ方だし)
作りこむのが面倒であればGrapeCityとかが売ってる高機能なコンポーネントを使えばいいわけだし
397デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/11(火) 00:29:30.86ID:VMcLTapW0398デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/11(火) 01:03:45.60ID:8NPGWhvc0399デフォルトの名無しさん (ワッチョイ 3bad-DHjX)
2019/06/11(火) 01:12:02.27ID:fTJbh9kM0 >>398
こいつWebアプリ開発させられたら発狂しそう
こいつWebアプリ開発させられたら発狂しそう
400デフォルトの名無しさん (アウアウエー Sa93-dZrz)
2019/06/11(火) 01:38:08.73ID:ogrGMDt8a 今日のNGはこれか
VMcLTapW0
真っ赤にして待ってろ
VMcLTapW0
真っ赤にして待ってろ
401デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/11(火) 01:45:34.19ID:VMcLTapW0 なんか普通のことが普通にできなくなって開発者からそっぽ向かれてない?
wpfなんかこんなののオンパレードだし俺ら工場のおっさん向けアプリ作ってるだけなんに
必要のない変な機能多すぎ
その割にこんな簡単な機能は未実装って
未完成ってレベルじゃないよね
wpfなんかこんなののオンパレードだし俺ら工場のおっさん向けアプリ作ってるだけなんに
必要のない変な機能多すぎ
その割にこんな簡単な機能は未実装って
未完成ってレベルじゃないよね
402デフォルトの名無しさん (ワッチョイ 2352-SCyR)
2019/06/11(火) 01:48:32.42ID:p0Xp2yNy0 >>401
そんなに同意して欲しいなら同意してやるからもう寝なよ
そんなに同意して欲しいなら同意してやるからもう寝なよ
403デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/11(火) 01:51:14.95ID:VMcLTapW0404デフォルトの名無しさん (スフッ Sd2f-tCrF)
2019/06/11(火) 02:17:35.18ID:FGV57sZTd >>403
言いたいことはお前が無能ってことだよ
言いたいことはお前が無能ってことだよ
405デフォルトの名無しさん (ワッチョイ bf63-KqSM)
2019/06/11(火) 02:19:21.88ID:AmszXiFy0 お前みたいな馬鹿が尻の穴嘗めてくれるからウハウハだぞバカ
406デフォルトの名無しさん (ワッチョイ cf61-o4u/)
2019/06/11(火) 02:28:30.43ID:VMcLTapW0 多分、日本はwindowsで作った資産があるけど
そうでない国はお金がないからわざわざWindowsを使わない
そんな状態が続いたもんだからlinuxの資産が貯まってしまって
お金を持っても今度はWindowsには移行できない
そんな事情のある最近のlinuxに寄り添ってる理由だろ
昔はその作りやすさから王者だったけど
最近そーでもねーのが致命的になってんじゃねーのか?と
そうでない国はお金がないからわざわざWindowsを使わない
そんな状態が続いたもんだからlinuxの資産が貯まってしまって
お金を持っても今度はWindowsには移行できない
そんな事情のある最近のlinuxに寄り添ってる理由だろ
昔はその作りやすさから王者だったけど
最近そーでもねーのが致命的になってんじゃねーのか?と
407デフォルトの名無しさん (ラクッペ MM2f-KqSM)
2019/06/11(火) 02:33:30.92ID:mh1wU8omM クソ長文書いてねえで寝ろクズ
408デフォルトの名無しさん (ワッチョイ 6b2c-MqbY)
2019/06/11(火) 03:14:41.06ID:aZcuYhl50 HTML のボタンには、disabled 属性もある
409デフォルトの名無しさん (ワッチョイ 4f01-joCs)
2019/06/11(火) 07:09:30.30ID:nARElikq0 もうwebオンリーで行くかなと思ったけどバーコード使いたいと言われるとFormeアプリ使わんとダメだよね
XAMLは流行る予感がしないから触る事ないな
XAMLは流行る予感がしないから触る事ないな
410デフォルトの名無しさん (ワッチョイ 9347-tCrF)
2019/06/11(火) 08:52:13.44ID:eYjHCkmz0 Webでバーコード扱えるけど
411デフォルトの名無しさん (スフッ Sdd7-aKta)
2019/06/11(火) 10:34:45.11ID:q+xysia0d Shape Detection APIな。
PCのChromeでも動けば動作検証楽なのになぁ、あれ。
PCのChromeでも動けば動作検証楽なのになぁ、あれ。
412デフォルトの名無しさん (オイコラミネオ MM49-2EjL)
2019/06/11(火) 14:05:54.20ID:6dm7scj8M リーダーをUSBに差せばWebでも使えるやで
413デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/11(火) 14:08:24.54ID:8NPGWhvc0 ふぅーDataGridViewのボタンの非活性できた。
MSはその程度実装しておけよ
MSはその程度実装しておけよ
414デフォルトの名無しさん (ワッチョイ 472d-3pk8)
2019/06/11(火) 14:27:25.63ID:irqLdUAC0 CheckBox も同様だけど、Visible と Enable くらいは実装しとけよ、って思うよなぁ
WinForms に対しては全くやる気ないみたいだけど
WinForms に対しては全くやる気ないみたいだけど
415デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/11(火) 14:41:17.27ID:8NPGWhvc0416デフォルトの名無しさん (ワッチョイ 472d-3pk8)
2019/06/11(火) 15:25:57.49ID:irqLdUAC0 x64 のときは Form_Load の中での例外はスルーするバグも絶賛放置
(x86 だったら、ちゃんと例外を捕捉する)
(x86 だったら、ちゃんと例外を捕捉する)
417デフォルトの名無しさん (ワッチョイ f101-xQwa)
2019/06/11(火) 15:57:17.26ID:dpi3ASg30 Windows Formなんてとっくに見捨てられてるからね。メンテナンスフェーズかも知れん。WPFですら10年前だし。ということでUPF使え。
…ってMSは思ってるかもだが、Formなにかと楽なんだよなあ
…ってMSは思ってるかもだが、Formなにかと楽なんだよなあ
418デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/11(火) 16:23:20.80ID:8NPGWhvc0 俺がゲイツなら首にするわ
419デフォルトの名無しさん (スッップ Sd2f-DHjX)
2019/06/11(火) 18:42:14.00ID:a3rgTFI7d .NET Core3.0リリース後にちゃちゃっとPR書けば?そんなに簡単なら
420デフォルトの名無しさん (ドコグロ MMdf-2DaB)
2019/06/11(火) 20:32:19.05ID:3Y+SR7BCM 悪いけど、FullFx版のWinFormsとの互換性を損なうようなコミットは全部リジェクトだと思うよ
forkして弄るのは勝手だけど
forkして弄るのは勝手だけど
421デフォルトの名無しさん (ワッチョイ 3bad-DHjX)
2019/06/11(火) 20:58:05.88ID:fTJbh9kM0422デフォルトの名無しさん (アウアウエー Sa93-2DaB)
2019/06/11(火) 21:10:59.72ID:HH9jnqHSa どのみちMS自身が今後WinFormsに機能追加をすることはありえないんだから、縛りのきつい公式リポジトリに拘る意味がないでしょ
WinFormsをクロスプラットフォーム化するコミュニティプロジェクトは必ず立ち上がるから、それに参加したらいい
WinFormsをクロスプラットフォーム化するコミュニティプロジェクトは必ず立ち上がるから、それに参加したらいい
423デフォルトの名無しさん (オッペケ Sra5-K3Ee)
2019/06/11(火) 21:15:40.32ID:GAHoXfWar424デフォルトの名無しさん (アウアウエー Sa93-2DaB)
2019/06/11(火) 21:40:49.66ID:HH9jnqHSa >>423
残念ながらベタ移植だよ
ほとんどのソースはオリジナルからコピーしてきてヘッダコメントを変えただけ
WinFormsをCoreでビルドできるように手直ししただけの代物だ
WPFなんかC++/CLIにべったり依存してるからもっと酷くて、
WPFをビルドするためだけにVCのコンパイラに限定的なCoreサポートを追加して無理矢理ビルドしてる
そんな不毛なことするくらいならネイティブ部分を書き直せと批判されてしばしばissueが炎上してるが、MSはガン無視
残念ながらベタ移植だよ
ほとんどのソースはオリジナルからコピーしてきてヘッダコメントを変えただけ
WinFormsをCoreでビルドできるように手直ししただけの代物だ
WPFなんかC++/CLIにべったり依存してるからもっと酷くて、
WPFをビルドするためだけにVCのコンパイラに限定的なCoreサポートを追加して無理矢理ビルドしてる
そんな不毛なことするくらいならネイティブ部分を書き直せと批判されてしばしばissueが炎上してるが、MSはガン無視
425デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/12(水) 09:44:54.85ID:jI3pneRO0 DataGridView_hoge.AllowUserToResizeColumns = false;
列幅変更出来ない様にしたつもりですが、普通にドラッグしてサイズ変更出来てしまいます。
何が原因でしょうか???
列幅変更出来ない様にしたつもりですが、普通にドラッグしてサイズ変更出来てしまいます。
何が原因でしょうか???
426デフォルトの名無しさん (ワッチョイ d37c-m4My)
2019/06/12(水) 10:24:07.46ID:0xThtXZC0 行ヘッダ列はAllowUserToResizeColumnsじゃなくてRowHeadersWidthSizeModeで設定しないといけないけど
それ以外の列ってことなら何か変なことやってるんじゃないのとしか言えないなぁ
それ以外の列ってことなら何か変なことやってるんじゃないのとしか言えないなぁ
427デフォルトの名無しさん (ワッチョイ e37d-to8s)
2019/06/12(水) 10:29:24.57ID:jI3pneRO0428デフォルトの名無しさん (ドコグロ MM03-o4u/)
2019/06/12(水) 21:10:32.82ID:MR/XkF+FM なんかWindowsアップデートで動かなくなったりするから
Windowsやめようぜって方向になってるぞ
Windowsやめようぜって方向になってるぞ
429デフォルトの名無しさん (ワッチョイ bf63-KqSM)
2019/06/12(水) 21:27:03.90ID:1sqooHn/0 どうぞ
430デフォルトの名無しさん (ワッチョイ 9fda-NLO+)
2019/06/12(水) 23:03:21.43ID:AKIxT99i0 どうぞどうぞ
431デフォルトの名無しさん (スフッ Sdd7-tCrF)
2019/06/12(水) 23:30:47.47ID:uj0EyW6pd バイバーイ(^.^)/~~~
432デフォルトの名無しさん (スップ Sd5a-V1Ms)
2019/06/13(木) 12:45:58.94ID:jjdzM/JQd WPFの将来性ってどうですか?
今から勉強する価値ありますかね
今から勉強する価値ありますかね
433デフォルトの名無しさん (ドコグロ MMba-FH5+)
2019/06/13(木) 15:02:14.86ID:5cAqIW1CM434デフォルトの名無しさん (アウアウエー Sa52-euJK)
2019/06/13(木) 17:22:47.41ID:7q1+HOWFa たぶん現状のまま放置されるって意味では将来性ないけど
Silverlightみたいに事実上使えなくなることは恐らくないから
勉強して無駄になることもないと思うよ
そいうや、何年か前にWin32を廃止する計画を読んだ記憶があるけど
例によって軌道に乗ってるように思えんねw
Silverlightみたいに事実上使えなくなることは恐らくないから
勉強して無駄になることもないと思うよ
そいうや、何年か前にWin32を廃止する計画を読んだ記憶があるけど
例によって軌道に乗ってるように思えんねw
435デフォルトの名無しさん (ササクッテロ Spbb-n4BA)
2019/06/13(木) 18:14:02.25ID:EM2pYCLsp >>434
win32廃止したら、Windowsじゃ無くなるじゃん
win32廃止したら、Windowsじゃ無くなるじゃん
436デフォルトの名無しさん (スフッ Sdba-UiF5)
2019/06/13(木) 22:23:06.18ID:tGgsvZyOd >>435
win64 APIのみにするってことでしょ
win64 APIのみにするってことでしょ
437デフォルトの名無しさん (ワンミングク MM8a-vPrp)
2019/06/13(木) 22:27:30.58ID:dTdyRg7kM ARM使い「そうか」
438デフォルトの名無しさん (ワッチョイ 275f-n4BA)
2019/06/14(金) 09:46:05.42ID:v6Wc7xsI0 >>436
Windowsから互換性取ったらMacとの優位性が崩れてしまうわ。
Windowsから互換性取ったらMacとの優位性が崩れてしまうわ。
439デフォルトの名無しさん (ブーイモ MMba-OxFy)
2019/06/14(金) 10:19:55.42ID:Qm4arTEGM う互換性
440デフォルトの名無しさん (ワッチョイ 4e7b-r4R3)
2019/06/14(金) 13:28:36.75ID:Js4PARtC0 GDIとかいつまで残ってんだろ
441デフォルトの名無しさん (ワッチョイ 3e7c-FPqD)
2019/06/14(金) 13:36:31.53ID:Io9qelQj0 APIとしてはWindowsがある限り残るだろ
内部的に別の仕組みの描画フレームワークに渡すだけになる将来はあるかもしれんが
内部的に別の仕組みの描画フレームワークに渡すだけになる将来はあるかもしれんが
442デフォルトの名無しさん (アウアウエー Sa52-rXk6)
2019/06/14(金) 19:05:00.84ID:B1OfNWTta 独自OSはやめてLinux M$ディストリになったら最高なんだけどね
443デフォルトの名無しさん (ワッチョイ f368-hVo2)
2019/06/15(土) 00:33:09.29ID:8CcGi59t0 while(i<=1000000)
{
i++;
}
こういうお手製のループって結局invokeと同じ機能なんですかね?
待つという意味では
{
i++;
}
こういうお手製のループって結局invokeと同じ機能なんですかね?
待つという意味では
444デフォルトの名無しさん (ワッチョイ be05-/zb+)
2019/06/15(土) 02:59:58.42ID:h/MXyyEj0 質問です。
JSONシリアライズなんですけど
{ "foo": "bar" }
としたいのに、DataContractJsonSerializerに
Dictionaryをシリアライズさせると
{ "key": "foo", "value":"bar" }
となってしまいます。
何かいい方法ないですか?
どういうキーワードでググればいいかも分からなくて。
JSONシリアライズなんですけど
{ "foo": "bar" }
としたいのに、DataContractJsonSerializerに
Dictionaryをシリアライズさせると
{ "key": "foo", "value":"bar" }
となってしまいます。
何かいい方法ないですか?
どういうキーワードでググればいいかも分からなくて。
445デフォルトの名無しさん (ワッチョイ 1a2c-jEME)
2019/06/15(土) 06:29:12.34ID:izWNJzhX0 >>443
何のinvokeの話なのか知らないけど
ほとんどのInvokeメソッドとは全く違うんじゃないかな
>444
DataContractJsonSerializerSettings.UseSimpleDictionaryFormat
何のinvokeの話なのか知らないけど
ほとんどのInvokeメソッドとは全く違うんじゃないかな
>444
DataContractJsonSerializerSettings.UseSimpleDictionaryFormat
446デフォルトの名無しさん (ワッチョイ 0eda-2qry)
2019/06/15(土) 07:12:02.05ID:+UtdpkHU0 ConcurrentDictionary<Guid, ConcurrentDictionary<int, string>>
のようなデータ構造で、Value部の付け外しにlock機構って必要ですか??
var cd = new ConcurrentDictionary<Guid, ConcurrentDictionary<int, string>>();
lock(_lockObj)
{
if(!cd.TryGetValue ・・・)
{
var child = ConcurrentDictionary<int, string>();
cd.TryAdd(Guid.NewGuid(), child);
}
}
2つのスレッドがほぼ同時にアクセスしたとき、
最初に追加したValue部(ConcurrentDictionary<int, string>)を潰したくないです。
lock使うなら、普通にDictionaryでいいんですかね・・ 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)
のようなデータ構造で、Value部の付け外しにlock機構って必要ですか??
var cd = new ConcurrentDictionary<Guid, ConcurrentDictionary<int, string>>();
lock(_lockObj)
{
if(!cd.TryGetValue ・・・)
{
var child = ConcurrentDictionary<int, string>();
cd.TryAdd(Guid.NewGuid(), child);
}
}
2つのスレッドがほぼ同時にアクセスしたとき、
最初に追加したValue部(ConcurrentDictionary<int, string>)を潰したくないです。
lock使うなら、普通にDictionaryでいいんですかね・・ 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)
447デフォルトの名無しさん (ワッチョイ 3363-JGhj)
2019/06/15(土) 07:35:12.58ID:IMLKv0k+0 getとaddが不可分操作じゃないから要る
448デフォルトの名無しさん (アウアウウー Sac7-FH5+)
2019/06/15(土) 09:17:07.61ID:6PSH/Imja449デフォルトの名無しさん (ブーイモ MMba-+7bl)
2019/06/15(土) 14:37:59.48ID:qro2r2SGM HttpClientもWebClientもHttpWebRequestもまともじゃないのは一体なんなんだ
450デフォルトの名無しさん (ブーイモ MMe7-/bGO)
2019/06/15(土) 14:47:05.46ID:hWID9DJjM >>449
具体的には?
具体的には?
451デフォルトの名無しさん (ワッチョイ a363-V6AN)
2019/06/15(土) 14:49:08.14ID:2Fwz82J/0452デフォルトの名無しさん (ブーイモ MM7f-OxFy)
2019/06/15(土) 15:37:24.10ID:CD9ImjzWM >>449
KWSK
KWSK
453デフォルトの名無しさん (ワッチョイ be05-bHsE)
2019/06/15(土) 15:42:35.91ID:h/MXyyEj0 >>445
ありがとうございます!
ありがとうございます!
454デフォルトの名無しさん (アウアウウー Sac7-vI2o)
2019/06/15(土) 18:51:55.25ID:Tm2el/yWa455デフォルトの名無しさん (ブーイモ MMe7-/bGO)
2019/06/15(土) 19:28:03.88ID:hWID9DJjM >>454
具体的には?
具体的には?
456デフォルトの名無しさん (ワッチョイ a363-V6AN)
2019/06/15(土) 19:39:46.98ID:2Fwz82J/0 具体的なことは言えないレベルでなんとなく否定してるに1票
457デフォルトの名無しさん (ワッチョイ 1aad-7FmS)
2019/06/15(土) 20:17:44.79ID:p9QrGiGS0 まあHttpClientFactory使えってなるよね、最近は
458デフォルトの名無しさん (アウアウウー Sac7-vI2o)
2019/06/15(土) 20:49:10.87ID:Tm2el/yWa HttpWebRequestやWebClientは確実にゴミ
例えば非同期でいろんなサイトからダウンロードするアプリを作ろうとしても
実インスタンスが一つなので各サイトに合わせて設定できない
HttpClientはまともにusingできない使いまわし前提で管理が面倒でバグりやすい
例えば非同期でいろんなサイトからダウンロードするアプリを作ろうとしても
実インスタンスが一つなので各サイトに合わせて設定できない
HttpClientはまともにusingできない使いまわし前提で管理が面倒でバグりやすい
459デフォルトの名無しさん (ワッチョイ 1aad-7FmS)
2019/06/15(土) 21:25:13.03ID:p9QrGiGS0460デフォルトの名無しさん (ワッチョイ a31b-+7bl)
2019/06/15(土) 21:28:36.81ID:403fYel+0 いや知ってりゃ使えるだろってのはわかるんだが
なんでどれもこれも罠が満載なの? っていう話ね
なんでどれもこれも罠が満載なの? っていう話ね
461デフォルトの名無しさん (ワッチョイ a363-V6AN)
2019/06/15(土) 23:31:09.76ID:2Fwz82J/0 >>457
なにこれ?ナウなやつ??
なにこれ?ナウなやつ??
462デフォルトの名無しさん (ワッチョイ 8a2d-9Zao)
2019/06/15(土) 23:31:12.45ID:TLpy9Lqp0 MacのCore2.1でデリゲートのシリアライズを試してるんだけどさあ、これって動くプラットフォームもあるってことなの?
class Program
{
static void Main(string[] args)
{
Func<int, int> A = i => i + 1;
BinaryFormatter formatter = new BinaryFormatter();
var tempStream = new MemoryStream();
formatter.Serialize(tempStream, A);
//System.Runtime.Serialization.SerializationException がスローされました
//"Serializing delegates is not supported on this platform."
}
}
レファレンスだとMacで動かないとか特に書いてはいなさそうだけど、どこを見たらそういう情報ってわかるんだぜ?
https://docs.microsoft.com/ja-jp/dotnet/api/system.runtime.serialization.formatters.binary.binaryformatter.serialize?view=netframework-4.8
class Program
{
static void Main(string[] args)
{
Func<int, int> A = i => i + 1;
BinaryFormatter formatter = new BinaryFormatter();
var tempStream = new MemoryStream();
formatter.Serialize(tempStream, A);
//System.Runtime.Serialization.SerializationException がスローされました
//"Serializing delegates is not supported on this platform."
}
}
レファレンスだとMacで動かないとか特に書いてはいなさそうだけど、どこを見たらそういう情報ってわかるんだぜ?
https://docs.microsoft.com/ja-jp/dotnet/api/system.runtime.serialization.formatters.binary.binaryformatter.serialize?view=netframework-4.8
463デフォルトの名無しさん (アウアウウー Sac7-euJK)
2019/06/15(土) 23:37:24.81ID:eE+hzs3Oa464デフォルトの名無しさん (ワッチョイ 6717-2qry)
2019/06/15(土) 23:54:10.26ID:ioIpgNFD0 デリゲートをシリアライズするっていう発想がそもそもなかったわ
465デフォルトの名無しさん (ワッチョイ 8a2d-9Zao)
2019/06/16(日) 00:04:36.79ID:IRiSsL3Z0 ダメか、ありがとう
466デフォルトの名無しさん (アウアウウー Sac7-FH5+)
2019/06/16(日) 00:06:06.77ID:j15M4OK0a デリゲートのシリアライズはFullFWなら可能
.NET Remotingで通信先からRPCするために使う機能だ
.NET Coreでは.NET Remotingが廃止されたから、.NET Coreで使えないのは当然
そもそもBinaryFormatterはそれ自体が廃止された.NET Remotingの一部であり、互換性のためだけに残されてる遺物
今更新規に使っちゃダメ
.NET Remotingで通信先からRPCするために使う機能だ
.NET Coreでは.NET Remotingが廃止されたから、.NET Coreで使えないのは当然
そもそもBinaryFormatterはそれ自体が廃止された.NET Remotingの一部であり、互換性のためだけに残されてる遺物
今更新規に使っちゃダメ
467デフォルトの名無しさん (ワッチョイ 1aad-7FmS)
2019/06/16(日) 00:12:52.39ID:G7NVDdhd0 >>461
うん、HttpClientのイケてないとこをラップして使いやすく(間違いを犯しにくいように)したやつ
うん、HttpClientのイケてないとこをラップして使いやすく(間違いを犯しにくいように)したやつ
468デフォルトの名無しさん (ワッチョイ 8a2d-9Zao)
2019/06/16(日) 00:22:01.61ID:IRiSsL3Z0 >>466
正直、これが出来るとリモートプロシージャコールの受け側がif/switch羅列になるのを避けられると思っていました
しかし、これはもろに時代に逆行していたんですね・・・・
廃れたと言うことは今流のやり方もあるんですか?
正直、これが出来るとリモートプロシージャコールの受け側がif/switch羅列になるのを避けられると思っていました
しかし、これはもろに時代に逆行していたんですね・・・・
廃れたと言うことは今流のやり方もあるんですか?
469デフォルトの名無しさん (アウアウウー Sac7-FH5+)
2019/06/16(日) 00:27:11.51ID:j15M4OK0a .NET CoreでRPCしたいならRESTかgRPC使えとMS様は仰ってるね
470デフォルトの名無しさん (ワッチョイ 8a2d-9Zao)
2019/06/16(日) 01:01:25.28ID:IRiSsL3Z0 gRPCを使用する場合でも、サーバからグローバルIPを持たないクライアントのメソッドを呼びたい場合にデリゲートシリアライズ化は有用なように思えてしまいます
接続を切らずにStreamで独自形式の命令を送り続けることになり、クライアント側では送られてきた命令を解析するためのswitch/if文だらけのコードになってしまうからです
でもif文羅列で正しいのかな・・・・どうなんだろう・・・・
接続を切らずにStreamで独自形式の命令を送り続けることになり、クライアント側では送られてきた命令を解析するためのswitch/if文だらけのコードになってしまうからです
でもif文羅列で正しいのかな・・・・どうなんだろう・・・・
471デフォルトの名無しさん (ワッチョイ 5b1a-vI2o)
2019/06/16(日) 01:18:24.92ID:WGBivVxV0 プログラミング未経験からC#を勉強して1週間程の者です
疑問に思うことがふたつあるのでよかったら教えてください
ひとつめは配列の宣言について、宣言は省略せずにきちんとしたほうがいいのでしょうか?
また宣言する場合に
string[] array = new string[3];
と変数名を最初にstringで指定しているはずなのに、配列の数をstringで再び書くのはなぜでしょうか?
ふたつめは、
Console.Write("a は {0}, b は {1}", a, b);
と書くのは
Console.Write("a は " + a + ", bは " + b);
と書くより見やすいためでしょうか?
疑問に思うことがふたつあるのでよかったら教えてください
ひとつめは配列の宣言について、宣言は省略せずにきちんとしたほうがいいのでしょうか?
また宣言する場合に
string[] array = new string[3];
と変数名を最初にstringで指定しているはずなのに、配列の数をstringで再び書くのはなぜでしょうか?
ふたつめは、
Console.Write("a は {0}, b は {1}", a, b);
と書くのは
Console.Write("a は " + a + ", bは " + b);
と書くより見やすいためでしょうか?
472デフォルトの名無しさん (ワッチョイ 1aad-7FmS)
2019/06/16(日) 01:25:53.37ID:G7NVDdhd0 >>471
ひとつめ:varが使える場所ならvarを使った方がいい
ふたつめ:前者だと、文字列をconstやリソースファイルで保持してパラメーターだけ入れ替えられる(=使いまわしできる)。
ただ、最近はよほどパフォーマンスにシビアだったりリソースを再利用したい箇所でなければstring interpolationを使うことの方が多い(圧倒的に見やすいしバグも発生しにくいから)。
ひとつめ:varが使える場所ならvarを使った方がいい
ふたつめ:前者だと、文字列をconstやリソースファイルで保持してパラメーターだけ入れ替えられる(=使いまわしできる)。
ただ、最近はよほどパフォーマンスにシビアだったりリソースを再利用したい箇所でなければstring interpolationを使うことの方が多い(圧倒的に見やすいしバグも発生しにくいから)。
473デフォルトの名無しさん (ワッチョイ 1aad-7FmS)
2019/06/16(日) 01:27:37.22ID:G7NVDdhd0 Console.Write($"a は {a}, b は {b}");
こうすると読みやすいしパラメーターの位置を間違える可能性が減る
こうすると読みやすいしパラメーターの位置を間違える可能性が減る
474デフォルトの名無しさん (ワッチョイ 9a2c-oZrO)
2019/06/16(日) 01:52:02.63ID:z9IiVZ7F0 C# は、面倒だな
Ruby の式展開(interpolation)では、
ダブルクォート文字列内に、#{式} で書くと、式の結果を文字列に変換してくれる
puts "a は #{ a }, b は #{ b }"
Ruby の式展開(interpolation)では、
ダブルクォート文字列内に、#{式} で書くと、式の結果を文字列に変換してくれる
puts "a は #{ a }, b は #{ b }"
475デフォルトの名無しさん (ワッチョイ a3e7-LWcw)
2019/06/16(日) 02:00:09.86ID:yJ9OuDHU0476デフォルトの名無しさん (ワッチョイ 1aad-7FmS)
2019/06/16(日) 02:05:52.16ID:G7NVDdhd0 1つ上のレスくらい読んでくれよ…
477デフォルトの名無しさん (ワッチョイ 5b1a-vI2o)
2019/06/16(日) 02:12:46.91ID:WGBivVxV0 string interpolationは参考にしておいたサイトでは見たことがなく初めて知りました
確かに圧倒的に見やすいですね
varを使うことで必然的に型を指定して初期化することになるので、その辺りの宣言はしっかりしようと思います
ありがとうございました
確かに圧倒的に見やすいですね
varを使うことで必然的に型を指定して初期化することになるので、その辺りの宣言はしっかりしようと思います
ありがとうございました
478デフォルトの名無しさん (ワッチョイ 9738-cL4w)
2019/06/16(日) 02:40:38.10ID:G+0AwVAf0 Rubyの人 おかえりはこちらです
479デフォルトの名無しさん (ワッチョイ a363-V6AN)
2019/06/16(日) 02:49:49.58ID:U3MUj56p0 >>467
いいね!使ってみる。
いいね!使ってみる。
480デフォルトの名無しさん (ワッチョイ 3761-R62x)
2019/06/16(日) 05:00:17.20ID:wxDeKJDL0 interpolation 略して inpo
481デフォルトの名無しさん (ワッチョイ ba47-UiF5)
2019/06/16(日) 08:33:51.55ID:59NNwAx00 >>470
WebSocketとかSignalRとか使ったらサーバーからの通知対してにライブラリが適切なメソッドを呼んでくれるのでは
WebSocketとかSignalRとか使ったらサーバーからの通知対してにライブラリが適切なメソッドを呼んでくれるのでは
■ このスレッドは過去ログ倉庫に格納されています
