C#, C♯, C#相談室 Part94 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/04/22(土) 15:36:53.26ID:S+KK7a41
■Visual Studio 2015 Community & Express (無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part92 (実質93)
http://echo.2ch.net/test/read.cgi/tech/1485589613/

■次スレは>>970が建てる事
建てられない場合は他を指定する事。
2017/06/15(木) 23:26:02.98ID:jxd6X7lC
>>319
こんなこと書くから勘違いするやつらが出てくるんだよ
2017/06/15(木) 23:29:43.37ID:9G4t6eWS
逆でしょ
コンテキストが同じでなければならないようなコードを書くほうが問題がある
UIのように物理的な制約でコンテキストを同じにしなければならないようなケース以外ではコンテキストに暗に依存すべきではない
2017/06/15(木) 23:30:07.33ID:uOk0laYQ
>>319
web用なんてどこにも書いてないじゃんw
どういう読解力だよ
2017/06/15(木) 23:37:13.75ID:sYWqerlW
>>323
スレッドの一貫性を要求する既存のライブラリやAPIや既存コードが世の中にどれだけあると思う?
現代の実用的なソフトウェアって、君が思ってる以上にスレッドに強く縛られてるんだよ
2017/06/15(木) 23:42:26.44ID:9G4t6eWS
>>325
そんなものにガッツリ依存するような書き方を普段からするのが良くないのでは?
2017/06/15(木) 23:44:03.24ID:sYWqerlW
>>326
俺もそう思うけど、そういう要件に遭遇するたびに会社辞めるわけ?
2017/06/15(木) 23:50:57.96ID:pnr+bbz5
>>327
一気に話が飛躍したな
2017/06/16(金) 06:35:48.13ID:FrehRa+N
>>327
それはあなたの自由だけど普通はもっとコストの低い方法を探すだろうね
2017/06/16(金) 06:41:26.24ID:nG3qIF/t
依存しまくってもいいんだよ
何でもかんでも分離しとくのがコードの形としては理想だけど手間かかるからな
その手間と依存することによるデメリットを比べて考えろ
2017/06/16(金) 07:46:02.57ID:FrehRa+N
何を言ってるんだろうこの人は
要らない手間を減らすために疎結合にするんだろ
あちこち依存しまくったら何をしようとしてもめちゃくちゃめんどくさくなるぞ
2017/06/16(金) 07:53:25.18ID:zHlBmHmO
疎結合にしたところでスレッド一貫性への依存は回避できないよ?
どう足掻こうが最終的には同期コンテキストに頼ることになる
2017/06/16(金) 09:28:49.43ID:CvLow468
なにまたUIスレッドくんなの?
豆腐の角に頭ぶつけて死ねよ
2017/06/16(金) 10:07:23.75ID:pyKmluG/
UIスレッドなくすと手間じゃなくて、グラフィックなどのパフォーマンスに影響出るからね
2017/06/16(金) 23:44:52.36ID:c8qzsUGp
最終的には同期とるけど最後なるまではコンテキストに依存しない方が良い
未だにデスクトップ開発してる子ってこんな簡単なこともわからないんだなぁ
2017/06/16(金) 23:54:05.06ID:A6bnq7Mz
いやデスクトップとか関係ないからw
昨日から何か勘違いしてる「俺スゲー」バカが湧いてるけど、こういう奴ってそもそも
非同期メソッドのメリットがどこにあるのか理解してないんじゃないのか
2017/06/17(土) 00:08:56.85ID:VR3qdmCX
>>336
流れ読めよ
アホなこと言ってるUI君を揶揄するからデスクトップって単語が出てくるんだよ
いや馬鹿には数スレ読むのも難しかったかこりゃ失敬
2017/06/17(土) 00:13:07.65ID:cX5L/y8y
悪いけど俺の目には反抗期のConfigureAwait(false)坊やが諭されてる流れにしか見えないな
2017/06/17(土) 00:27:31.93ID:LVtaY0YU
見え方は人それぞれだものね
2017/06/17(土) 02:40:14.58ID:P+HusDAs
>>337
数スレ読むのめんどいわ…
2017/06/17(土) 11:05:12.45ID:BEwZTU1B
イミュータブルなオブジェクトをクローンしたい
ただし1つだけプロパティを変更しつつクローンしたい
こういう時に使えるイディオムないか?
2017/06/17(土) 11:34:31.96ID:Kwn7bNYp
>>341
ない
それが頻繁に必要になるようなら設計ミスだ
集約の単位を間違えたってこと
343デフォルトの名無しさん
垢版 |
2017/06/17(土) 12:50:58.57ID:6fW6JpEJ
case class
2017/06/17(土) 13:07:13.23ID:OoQM2ww5
Fontのサイズだけ変えたいとか
2017/06/17(土) 16:03:58.52ID:gVA3olL6
コンポジションを簡単に書く構文は欲しい
2017/06/17(土) 16:13:25.11ID:BEwZTU1B
オブジェクトを複製したい
ただしIDと生成タイムスタンプは変えて
とかよくある
2017/06/17(土) 16:47:51.73ID:CkD5o1Z0
個人的にはオブジェクトを複製する機会がほとんどない
設定フォーム出す前ぐらい
2017/06/17(土) 16:51:08.65ID:CkD5o1Z0
不変な物だったらコンポジションでいいと思うけど
複製コスト考えたらなおのこと
2017/06/17(土) 19:20:20.32ID:x959dLvJ
イミュータブルとか言って意識高い系を気取るなら
IDが付いてるかどうかは値ではなく型で区別できるようにすべきだし、
更新時刻のようなメタデータを混ぜるのも美しくない
コンポジションでいいよ
2017/06/17(土) 19:24:31.07ID:PeeF0/YZ
更新時刻はドメインによってはメタデータとは限らないしIDのくだりは意味不明です
2017/06/17(土) 20:06:28.18ID:cY2SfCVS
>>341
ルー大柴みたい
2017/06/17(土) 21:30:39.68ID:gwKlEbVi
object obj = GetX(); //objectを返す処理

if(obj == null) //nullなら処理終了
return;

func(obj); //続きの処理

みたいな処理書く時のnullチェックって簡潔にならない?見た目が好きじゃないのよね
if(obj!=null)ならまだいけるんだけど、等号ってのがなんか気持ち悪い
if(!obj)みたいな書き方があればいいんだけど
2017/06/17(土) 21:31:16.46ID:KwnIyY64
確かにルー語っぽいな
2017/06/17(土) 21:34:20.92ID:f5T73F7L
>>352
真面目な話、むしろそういう自分自身を気持ち悪いと思った方がいいよ
くだらない
2017/06/17(土) 22:55:47.97ID:x959dLvJ
>>352
obj?.func()
2017/06/18(日) 02:25:14.82ID:hOVO0je6
>>355
これって?を見逃しそうであんまり好きじゃないんだよな。
1行で終わる関数やプロパティではいいけど複数行あるような場所じゃ使わない。
2017/06/18(日) 09:51:04.51ID:LYHl+woc
not nullableとかoptionalとか早くnull対策の拡張して欲しいね
これがあるとコードが明快かつスッキリして気持ちがいいんだ
2017/06/18(日) 11:12:50.35ID:gBGY/PYC
あからさまにアンチを釣ろうとするなよ
休みなのに暇人かお前
359デフォルトの名無しさん
垢版 |
2017/06/19(月) 20:45:39.85ID:flULi9iV
HttpWebRequestでログインした際のCookie情報を
webBrowserにわたしたいんですがどうしたら良いでしょうか?

HttpWebRequestでのログイン方法は以下のサイトを参考にしました。
C#によるWEBサイトへのログイン方法(ベーシック認証、クッキー認証)
>Aクッキー認証(ニコニコ動画へのログインサンプル)
>http://c-loft.com/blog/?p=637
2017/06/19(月) 20:58:16.79ID:+e5fxQUd
すっげえ既視感
2017/06/20(火) 00:25:26.64ID:0dk+Bj02
Selenium使ったほうが楽よ
362デフォルトの名無しさん
垢版 |
2017/06/20(火) 10:06:33.61ID:JuzXtFrS
>>361
seleniumだとブラウザ立ち上がるから嫌なんですよ
2017/06/20(火) 12:17:01.73ID:iIE7QTSf
>>362
ブラウザが立ち上がらないドライバもあるよ
2017/06/20(火) 13:49:47.98ID:RwIO/rjq
C#でそこそこ大きなアプリ作りたいんですけど何かフレームワーク的なものってありますか?
PHPでいうとCAKEPHPとかそういうのがあると嬉しいです
どなたか教えてください
2017/06/20(火) 13:50:19.99ID:RwIO/rjq
>>364
因みに作るアプリはウィンドウズアプリです
2017/06/20(火) 13:56:38.70ID:pKmK4wVA
コントロールやライブラリがいっぱい用意してあるのに.NETはフレームワークとして認められないのか
367デフォルトの名無しさん
垢版 |
2017/06/20(火) 15:29:08.65ID:JuzXtFrS
ヘッドレスだと内容がわからないんでちょっと困るんです・・・
注文が多くてすいません・・・。
2017/06/20(火) 20:11:36.18ID:yezLQglS
注文が多いのは別に構わん
それに応えるのがプログラマーなんだから
後出し情報は勘弁して欲しい
2017/06/20(火) 20:28:55.41ID:ooaxCRfM
.NET【フレームワーク】は?
2017/06/20(火) 20:55:37.48ID:ZGgDmAaP
>>368
全く質問に答えてない件
2017/06/20(火) 21:02:22.49ID:O8ihspy2
そもそもアプリって何
2017/06/20(火) 21:19:15.49ID:WlcUYLIV
今ならxaml+Prismかのう
2017/06/20(火) 21:22:49.88ID:0OgRQROP
普通にASP.NET MVCでしょ
このスレはWebアレルギーなおじさんが多いけどペチパーなら違和感なく馴染めるはず
2017/06/20(火) 21:53:51.14ID:yezLQglS
>>370
仲間だね
2017/06/20(火) 22:11:42.85ID:UY9c0ml0
>>367
デバッグ時は普通のブラウザ
運用時はヘッドレスブラウザ
運用時に何も見えないのが嫌ならコンソールで出力したっていい
ブラウザコントロールはオートメーションのためのコントロールじゃない
オートメーションしたいなら然るべきツールを使おう
2017/06/20(火) 23:32:36.55ID:TEAjB2PS
津波の心配はないか

DASH島助かったな!!!!
2017/06/25(日) 17:34:46.59ID:sNamIhLK
非同期でフォームをフリーズ?させずにコントロールをいじることはできないのでしょうか?
Invokeを使ってもつまるところ一緒だと思うのですが、何か方法はありませんでしょうか。

例えるとタスクマネージャのような感じです。
2017/06/25(日) 18:09:19.52ID:DRN741Gu
何がしたいのかわからない
コントロールを作ったスレッドからしかコントロールの操作はできない
2017/06/25(日) 18:23:14.24ID:fMxhTN4O
>>377
> Invokeを使ってもつまるところ一緒だと思う
よくわかってないならまずは言われた通りInvoke使っとけよ
380デフォルトの名無しさん
垢版 |
2017/06/29(木) 10:39:10.46ID:Hj4U7zK8
Formを閉じるとき、FormClosingイベントが2回走るんですが何故だかわかるでしょうか
381デフォルトの名無しさん
垢版 |
2017/06/29(木) 10:54:15.53ID:Hj4U7zK8
すみません。ボケでした。解決しました
2017/06/30(金) 01:26:32.30ID:NeWeP0/V
C#とうかvisualstudioの質問なんですが、
https://www.youtube.com/watch?v=vSi7hINZJds&;t=767s
この動画の5:30くらいでやってる
rect.noでif文入ってるのってコードスニペット?ReSharperの機能?
2017/06/30(金) 08:00:53.33ID:raM0njdy
>>382
スニペット
2017/06/30(金) 14:23:27.35ID:YD6uFwbU
なんかエロいな
2017/07/06(木) 09:16:56.19ID:9B2MU8kU
webbrowserでダイアログボックスを開いて操作することってできるんでしょうか?
たとえば画像アップロードサイトでファイルをアップロードするために「ファイルを選択」ボタンを押すと
ファイル選択画面になりますが、ここにファイル名を自動で入力して自動で「開く」ボタンを押したいと。

外部のブラウザならウィンドウハンドルを取得してそこに投げてやればいいのはわかるのですが、
webbrowserでやろうとして失敗しました。
2017/07/06(木) 09:18:40.56ID:9B2MU8kU
すいません、初心者なんで初心者用のほうで聞いてきます。
2017/07/07(金) 10:12:04.88ID:1lt3p8X+
デフォルトメーラーの新規メール作成画面を、任意の添付ファイル付きで起動するには、どうしたらいいでしょう
2017/07/07(金) 11:16:09.32ID:Bu34+FIl
>>387
確実にやるのはたぶん無理なんじゃ...

ググったらmailtoで添付ファイルを指定する非標準の方法があるらしいので、
環境次第で運がよければこれで動くかも
http://hardsoft.at.webry.info/201307/article_3.html
2017/07/07(金) 11:35:07.85ID:1lt3p8X+
>>388
ですよねー
mapiのlibraryも気軽に使えないし
素直にoutlook限定でやるしかないのかしら…
2017/07/07(金) 12:03:20.31ID:Q2kSZF88
ウイルス散布に加担したらダメだよ
2017/07/07(金) 19:33:51.77ID:e3ACTHSG
>>390
お薬増やしておきますねー
2017/07/07(金) 20:23:24.63ID:iPri5UgE
ジアゼパムとエチゾラムをお願いします
2017/07/07(金) 23:28:02.58ID:S/LuXCmi
コトリンに完全に出遅れた感があるね
Javaと一緒にオワコンになりそうだ
2017/07/08(土) 01:20:19.99ID:myez7kG5
Listって添え字とかCountの戻り値の型がintだけど要素数はintの最大値が最大なの?
ulongとまでいかなくてもせめてuintの最大値くらいのサイズで使いたいのだけど
2017/07/08(土) 02:24:32.26ID:5h0TkCqA
>>394
intの最大値まで
https://stackoverflow.com/questions/7885294/list-size-limitation-in-c-sharp?lq=1
によると64bitプロセスでフラグ指定しないと2gb以上は取れないので注意

Listは大量の値を扱うのにはおすすしないので、実装を考え直したほうがいい
2017/07/08(土) 09:17:17.05ID:E11ArQO6
無かったら作ればいいのに
2017/07/08(土) 10:24:58.17ID:e99XA9TK
そんな巨大なものを汎用コレクションで扱う意味がわからないな
そんなのIListとかを受け取る既存の特に巨大なコレクションを考慮してない普通のメソッドに渡しても現実的に機能するとは思えないんだが
2017/07/08(土) 13:25:53.27ID:myez7kG5
レスサンクス
いやC#初心者で手抜きできるならしたかっただけなんだ
2017/07/08(土) 14:32:39.37ID:E11ArQO6
uintの最大個までListに放り込みたいものってなに?
2017/07/08(土) 17:51:50.41ID:YUtLAjvF
C#初心者なだけで他になれてる言語でもあるのか?
億超える変数をメモリ上における言語なんてある?
2017/07/09(日) 01:53:58.05ID:mKtvmXn9
いやそれはいくらでもあるだろ
2017/07/09(日) 09:57:06.90ID:tkfa9uT4
もうDB使うレベルやな
2017/07/09(日) 13:56:59.39ID:Uu/MlKNR
インメモリデータベース
2017/07/09(日) 14:08:11.79ID:S5LsK0hK
理想的だな
2017/07/10(月) 11:28:28.03ID:EmERqEm/
なぜLINQ to SQLを使わないのか疑問
2017/07/10(月) 11:39:22.19ID:yJItLXdh
LINQ to SQLはもう非推奨だよ
今でも使ってる人は早く次へ行こうよ
2017/07/10(月) 11:48:54.44ID:W7xAmVRj
LINQ=LINQ to SQLのイメージ付いた人多いからLINQ自体非推奨とか言い出しそうで怖い
2017/07/10(月) 12:23:23.74ID:RlFgreuI
>>406
ソースは?まじで非推奨なん?
2017/07/10(月) 12:41:08.32ID:Rv/0H3M6
>>408
entity frameworkと言う後継技術にリプレース
常識すぎるのでソースはggrksレベルだよ
410デフォルトの名無しさん
垢版 |
2017/07/10(月) 17:56:50.23ID:LYSrTSKk
LINQ to SQLはしゃーない
普通のLINQとと違って単純に関数渡すわけにいかないから
2017/07/10(月) 18:56:53.91ID:aRNupX/x
list使うなって、entityframework使ってdbからlinqでtolistするの非推奨なん?
2017/07/10(月) 19:06:49.23ID:W7xAmVRj
>>411
ToListの後に何をするかによるんじゃね
2017/07/10(月) 19:30:14.32ID:aRNupX/x
まあ、データが多いなら、メモリに確保せず捨ててくのは当然か。
社内ツールぐらいしか作ったことない井の中の蛙だから大海に出たい。
2017/07/10(月) 19:52:25.49ID:yJItLXdh
LINQ to SQLは太古の技術だよ
EF使え
2017/07/10(月) 20:02:41.00ID:/9uIjFdQ
>>413
社内で自由に出来る程度がちょうどいいよ
他会社と共同作業になると制約が増えてストレス溜まる
2017/07/10(月) 20:29:55.71ID:JNAwLfPr
いまだにDataSetにFillしてぐるぐる回してます
源流がCOBOLの業務系デスマーチ製造会社
2017/07/10(月) 21:02:21.84ID:dHw9F+cl
開発スタイルがCOBOLのまま変わってないのに道具だけ進化しちゃうと悲惨だよね
COBOLだとコピペだらけの膨大なソースのせいで帳票に項目数個足すだけで一千万とか今でも珍しくないけど、
オープン系で「うちはCOBOL時代から変わらない伝統工法だから一千万かかるんです」はさすがに客に理解されないわな
2017/07/10(月) 22:47:00.60ID:2kp3NGJ8
講釈師ですか。
2017/07/10(月) 23:14:46.44ID:VkqAVaqs
>>414
EFとやらの旬な使い方を日本語で解説してるとこおしえてください!
2017/07/10(月) 23:24:29.00ID:/9uIjFdQ
英語ならあるよ
421デフォルトの名無しさん
垢版 |
2017/07/10(月) 23:36:05.03ID:R8ssGM8f
おまえらEFはクソだって言ってなかったか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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