C#, C♯, C#相談室 Part95

1デフォルトの名無しさん2017/10/17(火) 04:02:10.51ID:/jJUZ/t7
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

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

■前スレ
C#, C♯, C#相談室 Part94
http://mevius.2ch.net/test/read.cgi/tech/1492843013/

■次スレは>>970が建てる事
建てられない場合は他を指定する事。

2デフォルトの名無しさん2017/10/17(火) 04:02:54.33ID:/jJUZ/t7
■過去スレ
C#, C♯, C#相談室 Part90
http://echo.2ch.net/test/read.cgi/tech/1455160063/
C#, C♯, C#相談室 Part91
http://echo.2ch.net/test/read.cgi/tech/1467142749/
C#, C♯, C#相談室 Part91 (実質Part92)
http://echo.2ch.net/test/read.cgi/tech/1467211515/
C#, C♯, C#相談室 Part92 (実質Part93)
http://echo.2ch.net/test/read.cgi/tech/1485589613/
C#, C♯, C#相談室 Part94
http://mevius.2ch.net/test/read.cgi/tech/1492843013/

3デフォルトの名無しさん2017/10/17(火) 04:03:20.42ID:/jJUZ/t7
■関連スレ
初心者の質問向けはこちら

ふらっと C#,C♯,C#(初心者用) Part132
http://mevius.2ch.net/test/read.cgi/tech/1507543256/

4デフォルトの名無しさん2017/10/17(火) 04:13:22.04ID:Lf2Q7Nk8
Dictionary.TryGetValueってどんなシーンで使う?

5デフォルトの名無しさん2017/10/17(火) 04:42:48.76ID:sfm4oXzm
キーの存在チェックと値の取得を1行でできるやん?

6デフォルトの名無しさん2017/10/18(水) 05:27:55.54ID:U3iNCF28
.NET Core 2ってどうなん?

7デフォルトの名無しさん2017/10/18(水) 06:17:40.71ID:x50wQsAO
>>6
どうって?

8デフォルトの名無しさん2017/10/18(水) 09:53:11.38ID:vI9phIcR
小さいwebアプリをサクッと作ってライセンス料のいらんlinux鯖に置けるのはいいな>core

大規模プロジェクトで使う人は居ないだろうけど

9デフォルトの名無しさん2017/10/18(水) 09:55:51.07ID:J6ohalwU
C#でjQueryみたいにhtmlの中の要素を部分的に取り出すなどするのに
お勧めの方法おしえてちょ

10デフォルトの名無しさん2017/10/18(水) 10:34:59.49ID:xKDWMG8M
>>9
jQueryでやれば?

11デフォルトの名無しさん2017/10/18(水) 11:47:59.17ID:J6ohalwU
>>10
C#でお願いします。

12デフォルトの名無しさん2017/10/18(水) 12:04:26.85ID:jdxxBaxx
PythonのBeautifulSoupとかRubyのNokogiriとか使えば?
C#はスクレイピングには向いてない

13デフォルトの名無しさん2017/10/18(水) 12:08:45.42ID:qeVi1K01
HTMLアジリティパック?があるけど使いにくい
最近はSelenium2使ってるけどまあこれも本当のやり方じゃないね

14デフォルトの名無しさん2017/10/18(水) 12:23:00.35ID:aFTu0X+r
HTMLAgilityPack、あとSGMLReaderって昔なかったっけ?
今もあるのかは知らないが

そもそもC#を勧めないってのは同意

15デフォルトの名無しさん2017/10/18(水) 12:28:07.94ID:qeVi1K01
>>14
あるけどJqueryのようなアクセスしやすさじゃない
Xpath指定しないといけないので困る

16デフォルトの名無しさん2017/10/19(木) 10:57:41.27ID:gEfvUhSv
個人的にはCSSセレクタよりXPathのほうがむしろ好きなんだけど
むりやりXMLとして読む系は終了タグがない要素があるとツリーが無茶苦茶になるのが

17デフォルトの名無しさん2017/10/20(金) 11:48:27.53ID:szXZJW6I
Proj1とProj2があります。
1は2を参照して2のメソッドを使います。
1の中でClass Aを定義しています。
2の中でデータをList<A>に入れるメソッドを作り、結果を1に返したいのですが、
その為に2から1を参照してClass Aの定義を使おうとしたら循環参照でエラーしました。
こう言う場合、どうすれば良いですか?

18デフォルトの名無しさん2017/10/20(金) 12:08:16.22ID:p6j5lSQw
>>17
何のためにプロジェクトを分けたいの?
まずはそこを明確にしないと始まらない。
循環参照してるってことは相互に切り離せないってことだから、現状ではプロジェクトを分ける意味は全く無い。
分けたい理由があるのなら、その理由次第で適切な方法は違ってくる。

19デフォルトの名無しさん2017/10/20(金) 12:33:59.93ID:0XL7LZDf
>>17
>2の中でデータをList<A>に入れるメソッドを作り、結果を1に返したいのですが
この処理をFunc<T,TResult>で定義するのが常套手段
使い方はググればわかると思うが、わからないならプロジェクトを分けるの諦めるしか無いね

20デフォルトの名無しさん2017/10/20(金) 12:55:07.59ID:c9z3JUrc
>>17
どうしてもやりたいなら、ClassAを定義したプロジェクトを作ってProj1,2両方から参照すればいいじゃん
発想の切り替えできないとこの先相当辛いよ

21デフォルトの名無しさん2017/10/20(金) 15:02:23.60ID:yLtxI7rs

22デフォルトの名無しさん2017/10/20(金) 16:04:35.93ID:szXZJW6I
>>19
ありがとうございました。
Func<T,TResult>で上手く行きました。

23デフォルトの名無しさん2017/10/20(金) 23:28:48.97ID:tVzPx1a9
Roslynってどうやって使うの?
ソースから仕様書を生成したいんだが可能か?

24デフォルトの名無しさん2017/10/20(金) 23:29:40.95ID:nJAQhV5j
普通に逆だろ

25デフォルトの名無しさん2017/10/21(土) 09:37:58.52ID:3o9beEeJ
自分のコード見返してどういう動きなのかはわかるが何を思ってそうしたのか思い出せない時があるなw
こういうときに仕様書書いておけばよかったと思い、そして3分経つと面倒で忘れるw
イベントの依存関係まで考えたら他人のコードの解析なんかやる気にもならない

26デフォルトの名無しさん2017/10/21(土) 10:09:37.14ID:VmqPmNn/
後で自分のコード見返して分からないってよく言われる話だけど俺はほとんど無いわ
コメントじゃなくてメソッド名や変数名でもいいけど、なるべくコード上に意図を残すように心掛けるのがコツだな
読めないコードを書く奴は大抵コードを製造作業による生成物と考えてる

27デフォルトの名無しさん2017/10/21(土) 10:10:03.66ID:fkuXV6f/
>>25
Doxygenとかじゃダメなの?
処理フローの方は http://mevius.2ch.net/test/read.cgi/tech/1507543256/360 が作るらしいから待っててね w

28デフォルトの名無しさん2017/10/21(土) 10:22:21.14ID:3o9beEeJ
>>27
俺はやる気にもならないって書いているんだし>>23に言ってやれよw
そのリンク先のやつは書く内容がおかしいやつだからどうでもいいが

29デフォルトの名無しさん2017/10/21(土) 10:29:48.18ID:fkuXV6f/
>>28
だからツール使えよって言う話も理解できないバカ乙 w

30デフォルトの名無しさん2017/10/21(土) 10:38:55.22ID:3o9beEeJ
>>29
せっかく教えてやったのにってことか
ありがとうございました

31デフォルトの名無しさん2017/10/21(土) 10:45:37.95ID:ut7aXw9f
>>26
説明的なプログラムは誰にでも書けるものではない
書ける人にとっては当たり前と思うけどそうではないらしい
自社のコードが汚い人になぜ汚いコードを書くのかと聞いて回ったことがある
彼らは動くものを作るので精一杯なんだ

32デフォルトの名無しさん2017/10/21(土) 11:15:21.71ID:J3/Oov/o
設計書も書かずいきなり書き始めたコードを綺麗も汚いもねぇよ
精々メソッドあたりの行数ぐらいしか評価のポイントがねぇ
書いた設計書に対してのソースがどうよ?って話になって初めて評価が下せる
俺はね

33デフォルトの名無しさん2017/10/21(土) 11:15:53.60ID:VmqPmNn/
>>31
それは確かに感じるね
彼らに共通して言えるのは、思考の抽象度を上げられないんだよな
話してると「そんな細かいことはどうでもいい」と感じることが多いけど、
その「どうでもいい」という感覚を理解させるのが非常に難しい

34デフォルトの名無しさん2017/10/21(土) 11:22:08.17ID:J3/Oov/o
>>33
抽象度とソースの綺麗さになんの関連があるのか説明できるの?

35デフォルトの名無しさん2017/10/21(土) 11:25:49.18ID:ut7aXw9f
>>33
その傾向はあるね
彼らに設計書を書かせると決まって日本語で手続きを書き始める

36デフォルトの名無しさん2017/10/21(土) 11:27:08.65ID:J3/Oov/o
そうやって風が吹けば桶屋が儲かる的なくだんないことを囀ってる限りモノなんか作れないよお前等w

37デフォルトの名無しさん2017/10/21(土) 11:46:58.45ID:VmqPmNn/
>>36
設計書が無いとソースは理解できないと考えるのなら、
君はプログラミングにおける抽象的思考(設計)の重要性を認めてるわけだよね
それなのになぜソースコード自体の抽象度が理解のしやすさに寄与するとは考えないの?

38デフォルトの名無しさん2017/10/21(土) 11:47:01.09ID:YB7WCv0f
>>33
それは言えてる

思考の抽象度
現代的プログラミングのキーワードだよなあ

39デフォルトの名無しさん2017/10/21(土) 11:53:24.38ID:J3/Oov/o
>>37
いや、設計書通りに組んであればええよ
何もなければ評価できん

40デフォルトの名無しさん2017/10/21(土) 12:08:23.05ID:Qn61yzAP
設計書に従った上で説明的な(ある意味冗長な)コードを保守性のために書くと思ったが違うのかな

41デフォルトの名無しさん2017/10/21(土) 12:29:31.12ID:Lfp6S+wn
>>40
それだと設計書に書いてない事は書くなって怒られるんだよね
設計書に書いてないことを書かないとビルドすらできないから無視するしかないんだけど

42デフォルトの名無しさん2017/10/21(土) 13:42:12.48ID:J3/Oov/o
>>37
そもそもなんで設計が抽象的なの?
お前の書いてる設計書漏れてるだけだろ

43デフォルトの名無しさん2017/10/21(土) 13:50:37.19ID:VmqPmNn/
>>42
君の言ってる設計書ってコーディングシートのことじゃないかな

44デフォルトの名無しさん2017/10/21(土) 14:11:32.97ID:imNN7PV1
まず仕様書と設計書とコーディングシートの定義からやらないとだめな予感

45デフォルトの名無しさん2017/10/21(土) 15:05:14.83ID:J3/Oov/o
>>43
は?脳みそ腐ってんだろお前

46デフォルトの名無しさん2017/10/21(土) 18:24:51.50ID:DqhfXWIR
最近のC#スレはマ板行くか首吊って死ね系の話題が多いですね
何かあったの?

47デフォルトの名無しさん2017/10/21(土) 22:38:08.54ID:T6ojywn7
大島てるに載るような終焉を迎えて下され

48デフォルトの名無しさん2017/11/02(木) 21:06:02.86ID:wBPFsAX5
db操作するならef使うべきですか?

49デフォルトの名無しさん2017/11/02(木) 21:12:22.89ID:ScvYxhm1
>>48
用途による
まあEntityFrameworkかDapperだろうけど

50デフォルトの名無しさん2017/11/02(木) 21:23:59.71ID:wBPFsAX5
>>49
linq to sqlってのは今は使わないんですか?

51デフォルトの名無しさん2017/11/02(木) 21:37:52.62ID:2ic6qUdy
今も昔も使われていない

52デフォルトの名無しさん2017/11/02(木) 22:32:29.05ID:ScvYxhm1
>>50
やめときな

53デフォルトの名無しさん2017/11/03(金) 00:10:48.35ID:dRQDJRm6
>>50
開発が終了してEFが後を継いだ

54デフォルトの名無しさん2017/11/03(金) 00:27:25.86ID:z1slN08A
>>53
efはmysqlでも使えるの?

55デフォルトの名無しさん2017/11/03(金) 04:33:13.63ID:xnvXDnsB
>>54
使えるよ

56デフォルトの名無しさん2017/11/03(金) 05:13:23.57ID:dmbucyNJ
>>55
その場合、例えばsql server向けに作ったC#プロジェクトで
DBをmysqlに変更しても大きな変更無く動かせるの?

57デフォルトの名無しさん2017/11/03(金) 09:17:51.48ID:BJmK7MtV
現実的にはSQLやスキーマの互換性の問題で無理
確実にデスマーチです

58デフォルトの名無しさん2017/11/03(金) 09:34:45.04ID:xnvXDnsB
>>56
ものによる

59デフォルトの名無しさん2017/11/03(金) 09:48:45.12ID:Ifv/vU0b
今もmysql使ってる人は少ないと思うけど知らない人がいるのかな
時代は変わりました

60デフォルトの名無しさん2017/11/03(金) 15:01:36.50ID:z1slN08A
>>57
sqlserverを使うある程度大きなプロジェクトだとefを使うのが一般的ですか?
全く使わないなんてのも有るんでしょうか?

61デフォルトの名無しさん2017/11/03(金) 16:05:45.83ID:xnvXDnsB
>>60
基本的にはEntityFramework、パフォーマンスを求められる箇所はDapper

62デフォルトの名無しさん2017/11/03(金) 19:12:47.52ID:QKSUaUtV
>>61
生のSQLを実行するのは一般的ではないのですか?

63デフォルトの名無しさん2017/11/03(金) 19:16:11.94ID:+cvTX3N5
>>62
普通はストアド作っといて、指示するんじゃね?

64デフォルトの名無しさん2017/11/03(金) 20:20:48.15ID:tw8puOLs
>>62
Dapperは生SQLだよ
DataReaderやクエリパラメータとオブジェクトの間のマッピングの単純作業を自動でやってくれるだけ

65デフォルトの名無しさん2017/11/03(金) 21:11:34.22ID:xnvXDnsB
>>62
EntityFrameworkでも生のSQLは書ける。書かなくてもパフォーマンスに(考慮しなくちゃいけないほどの)遅延がなければ書かない。

66デフォルトの名無しさん2017/11/03(金) 21:38:29.15ID:Ro85MhDs
>>63
それは生の一種だろ

67デフォルトの名無しさん2017/11/04(土) 03:09:26.28ID:bSw/g7Kd
WebRequestを続けて二回同じサーバーに別のオブジェクトで通信したら変なエラーが出るんだがわかる奴いる?
これじゃ情報不足ならそのうち再質問するが。

68デフォルトの名無しさん2017/11/04(土) 04:12:32.15ID:m6ZusNHm
「変」って何だよ具体的に言えよ
なんで相談室でまでこんな所から始めなければいけないんだ

69デフォルトの名無しさん2017/11/04(土) 12:22:27.57ID:d/IRXg6v
>>65
最近efを覚えて試しているんだけど、
efでusingしてdbに何か書き込むだけでも、なんかレスポンスが悪い気がするんだけど。
気のせい?

70デフォルトの名無しさん2017/11/04(土) 12:26:33.85ID:tv+raRR6
HTTPレンスポンスの生文字列データを取得する方法ある?レンスポンスにSet-Cookieが何箇所行かにあるやつをWebResponseでSet-Cookieヘッダを取得しても1番始めのしか取得出来ない

71デフォルトの名無しさん2017/11/04(土) 12:26:47.53ID:FXv0ObyH
>>69
何に比べてレスポンスが悪いの?
初回が遅いのはどうしようもない

72デフォルトの名無しさん2017/11/04(土) 12:28:02.53ID:/qI+U4k3
>>69
EFはサーバーで長時間にわたって大量のメモリ食わせて使うもんだ

73デフォルトの名無しさん2017/11/04(土) 12:30:33.34ID:FXv0ObyH

74デフォルトの名無しさん2017/11/04(土) 12:32:08.79ID:tv+raRR6
>>73
こんなのあったのかよ
センクス

75デフォルトの名無しさん2017/11/04(土) 12:40:00.34ID:d/IRXg6v
>>71
生と比べて

76デフォルトの名無しさん2017/11/04(土) 13:59:23.92ID:FXv0ObyH
>>75
???

77デフォルトの名無しさん2017/11/04(土) 14:02:54.09ID:gVOMythZ
efはコンドームだった説

78デフォルトの名無しさん2017/11/04(土) 14:30:16.19ID:m6ZusNHm
DB女の子説はやめろ

79デフォルトの名無しさん2017/11/04(土) 20:58:01.18ID:bSw/g7Kd
>>73でクッキー取得しても空なんだが?

80デフォルトの名無しさん2017/11/04(土) 22:05:43.00ID:bSw/g7Kd
解決した

81デフォルトの名無しさん2017/11/04(土) 22:41:27.51ID:FXv0ObyH
>>80
とれなかった原因は?

82デフォルトの名無しさん2017/11/04(土) 22:42:33.61ID:bSw/g7Kd
>>81
リクエストオブジェクトにCookieContextオブジェクト入れる&リダイレクトをオフで取れた

83デフォルトの名無しさん2017/11/08(水) 19:29:16.27ID:7+AqNTkf
ASP.NET MVCでControllerの中のソースコードが増えて来て混乱気味なのだが、
どうやって整理すればいいのかな?

84デフォルトの名無しさん2017/11/08(水) 19:59:44.18ID:AtvWoVld
モデルに実装する

85デフォルトの名無しさん2017/11/08(水) 20:04:15.29ID:7+AqNTkf
>>84
モデルって言うのは本来は何を入れるところなの?
細々とした色んな処理を書いてもいいの?

86デフォルトの名無しさん2017/11/08(水) 20:09:34.86ID:N6XqY60q
>>83
インプットを基にして処理を振り分けて、得た結果をViewに返すだけじゃないの?

87デフォルトの名無しさん2017/11/08(水) 20:38:56.54ID:AtvWoVld
>>85
モデルにはすべてのロジックを実装するのが正しい
コントローラの役割はリクエストの内容を受け取りモデルに投げて結果をVMに入れて返すだけ

88デフォルトの名無しさん2017/11/08(水) 21:16:06.13ID:vGP4g6Va
ASPって出番ある?みんな仕事の案件でやってるの?

89デフォルトの名無しさん2017/11/08(水) 21:46:20.39ID:Yt5neKtg
WebFormsの案件はドカタだとWinFormsより多いだろ
うちはMVCでSaaSやってる

90デフォルトの名無しさん2017/11/08(水) 22:10:09.31ID:rbcWTqbu
(実はMS案件には全く縁がない)

91デフォルトの名無しさん2017/11/10(金) 10:27:07.08ID:EEZieTzn
クラスのメンバのプロパティを小文字で始めると
メッセージ IDE1006 名前指定の規則違反: これらの単語は、大文字で始まらなければなりません:

と出るのだが、なんで小文字だとエラーなの?
世の中では、大文字で始める習慣があるの?

92デフォルトの名無しさん2017/11/10(金) 10:39:35.19ID:GXd92sM9
だからそういうメッセージが出るんだろ

93デフォルトの名無しさん2017/11/10(金) 13:41:07.91ID:Hx4QOm/G
VS2017ならデフォルトで提案事項になっているがエラーになるのは自分で設定したせいでは

94デフォルトの名無しさん2017/11/10(金) 13:55:50.82ID:DPfs8yVZ
>>93
自分ではしてない

95デフォルトの名無しさん2017/11/10(金) 14:22:22.24ID:Hx4QOm/G
ここに書かずに設定したやつに聞けばいいのに

96デフォルトの名無しさん2017/11/10(金) 15:46:12.86ID:dHTokmn8
で、それはエラーなの?
メッセージが出たら警告だろうが何だろうが全部エラーって言う人も多いけど

97デフォルトの名無しさん2017/11/10(金) 17:18:52.60ID:EEZieTzn
>>95
誰だよそれ?

98デフォルトの名無しさん2017/11/10(金) 17:22:41.93ID:VxFWEUmd
>>97
自分でいじってないなら初期設定決めたMSの人では

99デフォルトの名無しさん2017/11/10(金) 18:12:13.90ID:MvAM88wE
コンパイルエラーとは別にコード分析のエラー欄に出るんじゃないか?

>>91
命名ルールはこれ
https://msdn.microsoft.com/ja-jp/library/ms229002.aspx

100デフォルトの名無しさん2017/11/11(土) 00:13:18.80ID:VQqkIwVV
class A{
class B{
class C{
}
}
}
みたいに三重くらいになると、自分でもわけ分からなくなって来るんですが、
世間では三重くらいは普通ですか?

101デフォルトの名無しさん2017/11/11(土) 00:28:57.43ID:FsCJcvbF
>>100
内部クラスって表記しやすいだけでそれ以外のメリットあるのかね?

102デフォルトの名無しさん2017/11/11(土) 00:33:23.96ID:BH43IN+9
javaの人は良く使うけど
スコープの問題だけだから本来は使わないでもよさそう

103デフォルトの名無しさん2017/11/11(土) 00:59:17.39ID:kkrHimLP
内部クラスはたまーーーに使うけど3重なんて一度もしたことないな

104デフォルトの名無しさん2017/11/11(土) 01:19:20.69ID:3ysLENMg
何重までいけるん?

105デフォルトの名無しさん2017/11/11(土) 11:11:58.59ID:f6zZSvYO
>>104
プログラムやる人の発想じゃないな

106デフォルトの名無しさん2017/11/12(日) 08:56:15.86ID:LXGneVsA
>>100
static classだとよくやるけど
static class My{
static class Hoge{
static class Config{
}
}
}
My.Hoge.Configのように使える
でも3重は使わないな

107デフォルトの名無しさん2017/11/12(日) 10:27:34.46ID:j0JK3XOe
Javaだと1クラス1ファイル
客先の規約で配置できるファイルに制限があると内部クラスを使わざるをえない

108デフォルトの名無しさん2017/11/12(日) 10:36:20.99ID:3BzbD7Br
enum使いにくいから代わりにstatic class乱用してるわ

109デフォルトの名無しさん2017/11/12(日) 10:46:19.17ID:kmdFzMTF
>>108
enumのどのあたりがダメなん?

110デフォルトの名無しさん2017/11/12(日) 11:11:16.62ID:3BzbD7Br
>>109
後で要素増えたら参照先全部ビルドし直さなきゃならんあたり

111デフォルトの名無しさん2017/11/12(日) 11:19:21.94ID:kmdFzMTF
>>110
ビルドなんて一瞬じゃん?

112デフォルトの名無しさん2017/11/12(日) 11:28:22.38ID:PNAmYcb6
.Net Core 2.0では、だいぶん.NetFrameworkの実装がカバーされたと聞きました。
https://raw.githubusercontent.com/dotnet/standard/master/docs/versions/netstandard2.0_ref.md
これを見る限りでは、System.IO.StreamやSystem.IO.FileInfo、ISerializableなど
もあります。これらをUWPやASP.NET Coreでも使えるようになるという理解でいいでしょうか。

113デフォルトの名無しさん2017/11/12(日) 11:44:42.71ID:j0JK3XOe
C#のenumはメソッド定義できないから役立たず

114デフォルトの名無しさん2017/11/12(日) 12:19:41.85ID:pNqEHb8d
>>113
javaとは思想が違うからな
どうしてもメソッド使いたけりゃ拡張メソッド書けばいいだけのこと

115デフォルトの名無しさん2017/11/12(日) 12:24:54.60ID:zaPGzGOT
enumは型安全性をぶち壊すから…

116デフォルトの名無しさん2017/11/12(日) 12:39:52.61ID:j0JK3XOe
enumにメソッドを定義できないとenumスイッチがあちこちに書かれてシステムが汚染される
そんなことになるぐらいならenumは言語機能から追放したほうがいい

117デフォルトの名無しさん2017/11/12(日) 12:51:07.42ID:kmdFzMTF
>>116
メソッドが使えるとスッキリ書けるの?
例を教えて

118デフォルトの名無しさん2017/11/12(日) 13:21:53.63ID:WcVSvCUs
読み方はエナメラブルでいいのかね

119デフォルトの名無しさん2017/11/12(日) 13:26:58.08ID:hG4wTZ8S
>>112
逆に聞きたいんだけど、どういう理解があると思ったの?

120デフォルトの名無しさん2017/11/12(日) 13:29:17.49ID:j0JK3XOe
>>117
Javaのenumのメソッドはポリモーフィック
なのでステートやストラテジーなど様々な応用が利く

121デフォルトの名無しさん2017/11/12(日) 14:44:05.96ID:IOmcFQTN
enumはどうせ定数に置き換えられるんだから、最初から定数で書いとけばいいな

122デフォルトの名無しさん2017/11/12(日) 15:30:46.03ID:Lnuis1wP
>>107
javaって、内部クラスも1ファイルとして出力されるんじゃなかったっけ?

123デフォルトの名無しさん2017/11/12(日) 16:08:56.10ID:kmdFzMTF
class A,B,C,...が有って
void func<T>(...){...}
みたいな関数を
func<A>(...);
func<B>(...);
func<C>(...);
みたいに順番に実行したい場合、
forループ使って書ける?

124デフォルトの名無しさん2017/11/12(日) 16:11:43.25ID:MOg5phwx
>>122
>>107はソースの話やで?
オブジェクトはまとめたらいいだけだし

125デフォルトの名無しさん2017/11/12(日) 16:17:52.85ID:j0JK3XOe
>>123
var list = new dynamic[] { a, b, c };
foreach (var x in list)
func(x);

引数もインスタンスも無いならreflection

126デフォルトの名無しさん2017/11/12(日) 16:33:07.06ID:kmdFzMTF
>>125
なるほど。
dnamic使うしか無いんですね?

127デフォルトの名無しさん2017/11/12(日) 16:58:32.42ID:RZNIwvSq
reflectionが目に入らぬか

128デフォルトの名無しさん2017/11/12(日) 17:39:19.11ID:UFCv5vw0
>>127
reflectionと言うのでやる方法を教えて下さい

129デフォルトの名無しさん2017/11/12(日) 17:39:26.99ID:5vVJXllV
partical いいよなぁ

130デフォルトの名無しさん2017/11/12(日) 18:01:29.09ID:PNAmYcb6
>>119
APIはあっても、実際は例外投げるんじゃないかとか。
StreamやISerializableなど今まで散々レガシー扱いされてたのに、
すんなり実装されたのだったら、今までは何だったのかと思ってしまって。

131デフォルトの名無しさん2017/11/12(日) 18:02:25.44ID:Lnuis1wP
>>124
「配置できるファイルに〜」のところもソースファイルの話だったか、失礼した

132デフォルトの名無しさん2017/11/12(日) 18:42:10.04ID:WcVSvCUs
>>118
読み方はあっているのかい?

133デフォルトの名無しさん2017/11/12(日) 18:55:18.48ID:52C+Ep3W
>>132
えにゅめらぶる

134デフォルトの名無しさん2017/11/12(日) 19:11:35.21ID:Ti9eVPN+
>>133
いい難いなw

135デフォルトの名無しさん2017/11/12(日) 19:31:01.04ID:WbI57bEd
あいえにゅめらぼー

136デフォルトの名無しさん2017/11/12(日) 19:38:58.15ID:RZNIwvSq
れっきょ

137デフォルトの名無しさん2017/11/13(月) 01:47:33.98ID:v8HXsfBj
>>126
リフレクション
そもそも用途がわからんけど

138デフォルトの名無しさん2017/11/13(月) 01:55:32.64ID:v8HXsfBj
>>130
最初のリンクがそもそも.NETStandardの話なんだけど、.NETStandardとは何か知ってれば(最低限ググれば)前者は迷う余地がない
後者は経緯知らないけどレガシーが実装されたらだめという理由がない

…と考える人が大多数だと思う

139デフォルトの名無しさん2017/11/23(木) 11:44:32.89ID:3aIXz7vh
C#でちょっとした文字列の連結を行う場合、+がいいのかFormatがいいのかReplaceがいいのかStringBuilderを使うのがいいのか悩んでます
どれが一番いいのでしょうか?

1. string value = A + "-" + B;
2. string value = string.Format({0}-{1}, A, B);
3. string value = "{A}-{B}".Replace("{A}", A).Replace("{B}, B);
4. StringBuilder sb = new StringBuilder();
  sb.Append(A);
  sb.Append("-");
  sb.Append(B);

140デフォルトの名無しさん2017/11/23(木) 11:50:10.15ID:nWWLjgB9
こんな細かいことで悩んでいたら禿げるわ
それぞれにどれだけの差が出てくるか考えろよ

141デフォルトの名無しさん2017/11/23(木) 12:00:55.88ID:+AsqqoLD
$"{A}-{B}" でしょ

142デフォルトの名無しさん2017/11/23(木) 12:03:56.69ID:3aIXz7vh
>>141
なるほど

143デフォルトの名無しさん2017/11/23(木) 12:04:14.40ID:11MjDn+U
とりあえず、環境が許すなら141、駄目なら139の1

144デフォルトの名無しさん2017/11/23(木) 12:13:05.14ID:1XchAmld
連結ならいつもは分かりやすさ優先で+
実際に扱うデータで使ってみて遅いと感じたらStringBuilderに変えてるわ
置き換えは置き換えの時だし、フォーマット形式が必要と感じたらそれ使うし
悩むのかこれ…コーディング終わらんやろ…

145デフォルトの名無しさん2017/11/23(木) 12:20:49.75ID:Go3NcBxu
最初はくだらない事に悩むからしょうがない。直に、開き直るからそれまでとことん悩め。

146デフォルトの名無しさん2017/11/23(木) 12:24:20.12ID:nWWLjgB9
>>145
こういうので悩みだすのはスキルが伸びず閉塞感に陥って逃げ道探しているときだw

147デフォルトの名無しさん2017/11/23(木) 12:28:18.93ID:kBi82nCb
4とか使うのは連結回数がクソ多いぐらいだな

148デフォルトの名無しさん2017/11/23(木) 14:17:08.77ID:U/QtJVxM
StringBuilder必要なのはループで回す時くらいやろ
固定回数なら最適化されるんちゃうか
しらんけど

149デフォルトの名無しさん2017/11/23(木) 15:17:10.10ID:JqKYKF6h
改行したい時はsb.AppendLine使う
var s = $@"hello
{A}
world";
別にこれでもいいけど、インデントが気持ち悪い

150デフォルトの名無しさん2017/11/23(木) 18:08:06.61ID:w+OP7Z8m
数個程度の定数個の結合にStringBuilderは無いね
@""で改行入れたときの改行コードってソースコードの改行コードに依存するんかな

151デフォルトの名無しさん2017/11/23(木) 18:25:49.20ID:Go3NcBxu
StringBuilder使うのは基本、ループ内で文字列結合するときだけだな

152デフォルトの名無しさん2017/11/23(木) 18:28:19.08ID:zj6W6oGG
スレがボケジジイの繰り言みたいになってる

153デフォルトの名無しさん2017/11/23(木) 18:29:25.95ID:Go3NcBxu
と書くと、問題あるな。あるメソッド内でループしてないから普通に文字列結合してても、
そのメソッドを使う方でループしてメソッド呼び出されたら・・
ということでなんでもない。

154デフォルトの名無しさん2017/11/23(木) 19:44:15.73ID:NThPFj2G
パフォーマンスは大差ないので可読性で選ぶ
となると

定数個なら+
動的ならlinqとJoin

155デフォルトの名無しさん2017/11/24(金) 08:32:28.20ID:LQb8e4yU
public override と
override public とでは、どっちが普通ですか?

156デフォルトの名無しさん2017/11/24(金) 08:40:21.61ID:GsVE4oKd
アクセス修飾子が先

157デフォルトの名無しさん2017/11/24(金) 09:49:06.09ID:LQb8e4yU
>>156
じゃあstatic使う場合は
どこに入れるべきですか?

158デフォルトの名無しさん2017/11/24(金) 11:32:34.25ID:GsVE4oKd
アクセス修飾子が先

159デフォルトの名無しさん2017/11/28(火) 20:01:33.21ID:uo9ygS2y
EF Core + MariaDBで行ロックをするにはどうしたらいいですか?

160デフォルトの名無しさん2017/11/29(水) 11:56:45.71ID:/OzCwr8n
>>159
行ロックって何よ?

161デフォルトの名無しさん2017/11/29(水) 12:25:04.50ID:rN1pofYI
>>159
EFに明示的なロックは要らん
保存するときに他の変更があれば保存は失敗する

162デフォルトの名無しさん2017/11/29(水) 15:02:54.88ID:LyP2QHxX
EFは基本、楽観ロックだからね。
自分が更新するデータは誰も変更しないだろうということで楽観的に考えて行ロックを取得しない。
で、実際の更新時に、保存しておいたタイムスタンプ列や全列を比較して更新するUpdate文を
発行して誰も変更してなきゃ成功する。

163デフォルトの名無しさん2017/11/29(水) 15:08:27.80ID:LyP2QHxX
対して、悲観的ロックは誰か変更するんじゃないかと悲観的に考え前もって行ロックする。
行ロック取得したければ、トランザクションの分離レベル変更して、間接的に取得すればいいんじゃねぇかな。
例えば、トランザクションをロックを使って実装してるデータベース使ってるなら、
トランザクションの分離レベルをREPEATABLE READにして読めば、読み込んレコードには
行ロックがかかる。

164デフォルトの名無しさん2017/11/29(水) 15:52:26.83ID:x/indGo0
>>161
楽観的排他制御ってやつか!?

165デフォルトの名無しさん2017/11/29(水) 21:11:58.94ID:fgyKG67K
リトライだらけになる

166デフォルトの名無しさん2017/12/02(土) 10:37:02.24ID:OECpFj6Y
Consoleアプリの関数Aから別のスレッドで関数Bをを実行。
Bが終わるまで数分かかるので、その間はAの処理を引き続きやる。
Bが終わったら何らかの通知をA(あるいはアプリ)で受けとる。
そんな処理をしたいのですが、どんな手法がお勧めですか?

167デフォルトの名無しさん2017/12/02(土) 11:20:32.34ID:qE46CGT4
>>166
Hangfire

168デフォルトの名無しさん2017/12/02(土) 12:07:47.28ID:pzCW2tCE
書き捨てならポーリング

169デフォルトの名無しさん2017/12/02(土) 12:18:43.47ID:dIIqSudI
>>166
普通にTaskとasync-await

170デフォルトの名無しさん2017/12/02(土) 13:31:40.26ID:OECpFj6Y
>>167
情報ありがとうございました。調べてみます。
>>168
それは何ですか?
>>169
関数Aの中で関数Bの終了をawaitするとそこでAの処理が停止しますよね?
それでは困るんです。

171デフォルトの名無しさん2017/12/02(土) 13:38:50.65ID:/lrBlva0
通知を受け取って何をするの?
Aが実行中に通知を受け取った場合は?
Aが終わったあとに通知を受け取った場合は?

172デフォルトの名無しさん2017/12/02(土) 13:44:11.82ID:M5ek0NUJ
>>171
終わったってフラグでも作っておけばいい
何のためにそんなこと聞くの?

173デフォルトの名無しさん2017/12/02(土) 14:11:31.35ID:kxO6m70V
>>172
実際にコードに起こすこと考えたら>>171の疑問出てこない?
ポーリングの有無とかB終了の通知はA以外で受けたほうがいいのかみたいな

174デフォルトの名無しさん2017/12/02(土) 14:21:45.96ID:/lrBlva0
void A() {
...
Task.Run(() => B());
...
...
}

void B() {
...
...
SetSomeFlag();
}

こういうこと?
何をしたいのかハッキリしないな

175デフォルトの名無しさん2017/12/02(土) 14:22:18.75ID:T9uGCJHM
>>170
関数BをTaskで実行しておいて、たまにTask.Wait(0)がtrueを返すか確認する

176デフォルトの名無しさん2017/12/02(土) 14:22:55.12ID:M5ek0NUJ
>>173
何で目の前の問題置いて次の実装考えるの
やり方が一つ決まったらそれでやり通す必要もないし
質問者の要件わからないのにそんなこと聞きだす必要はない

177デフォルトの名無しさん2017/12/02(土) 15:15:48.94ID:XMkOweAB
多分処理AはUIスレッドなんだろ
処理B実行中にUIは止めたくない
そして処理B完了でUIを更新したい

そんな要件だと想像した

178デフォルトの名無しさん2017/12/02(土) 15:34:29.65ID:kxO6m70V
>>177
それだとInvokeやDispatcherの話にも広がりそうだね

179デフォルトの名無しさん2017/12/02(土) 16:57:04.20ID:ax4ftaEq
>>177
consoleアプリって書いてあるやん

180デフォルトの名無しさん2017/12/02(土) 17:27:35.43ID:2zJJAtZS
10レスそこらも遡れないとかヤバすぎて草

181デフォルトの名無しさん2017/12/02(土) 18:20:58.48ID:M5ek0NUJ
元の話が設計で根本的におかしいか思い付きで質問しているかどっちか
後半に100ペリカ

182デフォルトの名無しさん2017/12/02(土) 20:31:53.15ID:XMkOweAB
コンソールアプリなら
EventWaitHandle使うのが楽そう

183デフォルトの名無しさん2017/12/02(土) 21:02:27.32ID:8UWC/wK0
WaitHandleは完了を待つ側のスレッドをブロックするから、
それでいいんだったら普通にasync-awaitでいい

184デフォルトの名無しさん2017/12/02(土) 21:06:19.33ID:pzCW2tCE
せやね

185デフォルトの名無しさん2017/12/02(土) 22:01:19.49ID:hEzEqaaq
Aで何したいかだけどコールバックでいいんじゃないの

186デフォルトの名無しさん2017/12/02(土) 22:11:03.11ID:8UWC/wK0
だったらTask.ContinueWithでいいだろ

187デフォルトの名無しさん2017/12/03(日) 01:24:35.88ID:R5bnWQiD
つかそもそも別スレッドで実行する必要があるのか
別プロセスで良いんじゃねえのか

188デフォルトの名無しさん2017/12/03(日) 10:20:17.77ID:8EUneh2f
>>187
プロセス間のデータ受渡はsoket通信する感じ?

189デフォルトの名無しさん2017/12/03(日) 10:32:03.87ID:eMfWVF0k
>>188
勝手に要件作る気なのかw
しかも中身まで要エスパーとか

1901662017/12/03(日) 10:48:55.10ID:fYwJfoN4
皆さんレスありがとうございました。
>Aが実行中に通知を受け取った場合は?
関数Cを別スレッドで実行したいです。例えばこんなふうに。
void C(){
 Console.WriteLine("Bが終わった");
}
>Aが終わったあとに通知を受け取った場合は?
Aは終わらないと言う前提でお願いします。

191デフォルトの名無しさん2017/12/03(日) 10:52:57.14ID:eMfWVF0k
>>190
>>186に出ているだろ
というかTaskメソッドをMSDNで調べろよ

192デフォルトの名無しさん2017/12/03(日) 11:54:26.84ID:dO3du7bJ
ふらっと案件

193デフォルトの名無しさん2017/12/03(日) 12:01:59.74ID:mrNMXEOK
フラット案件どころかこれだけレスとキーワード出ていて自分で解決できないのならプログラムやめるべき

194デフォルトの名無しさん2017/12/03(日) 12:09:59.71ID:S5PX0FVt
勘違いレスした奴もふらっと行きの刑で

195デフォルトの名無しさん2017/12/03(日) 12:14:39.54ID:WBs9Zv02
何でもいいけどすぐ動く完動品が出てくるまでこの調子だと思うぜ
どうせソースないんだろ、出てきたものを見ていじって作ろうとしてるんだろ

196デフォルトの名無しさん2017/12/03(日) 14:16:09.36ID:VfzmjXdH
>>190
BとCについてはよく分かった
Aが現状どういう処理をしているかによって
解決の仕方が違ってくると思うな

197デフォルトの名無しさん2017/12/03(日) 21:08:04.26ID:Or+Mlh4N
Aは終わらないという前提でちょっと笑った

198デフォルトの名無しさん2017/12/04(月) 17:37:29.30ID:KH9vP8EW
コンソールアプリで関連性のない2つの動作を同居させるシチュエーションがわからん
マルチスレッドにしたら効率が良くなるってだけの頭の悪い発想じゃね
>>187が当てはまらないのならぜひ教えてほしいくらい

199デフォルトの名無しさん2017/12/06(水) 04:39:39.43ID:PV/6ekcb
>>188
コンソールアプリ同士なんだから、まず標準入出力でダメか考えるべきじゃね
ソケット通信が必要ならまあやればいいけど、それだとそもそもコンソールアプリなのが正しいのか疑問だ

200デフォルトの名無しさん2017/12/06(水) 07:38:42.71ID:7eNsiGhQ
>>199
ASP.NET Coreなんてもろコンソールアプリだけどな

201デフォルトの名無しさん2017/12/07(木) 01:34:47.15ID:f4DoJP6b
>>199
GUIが必要ないからCUIってプログラムは幾らでもあるが。

202デフォルトの名無しさん2017/12/07(木) 12:33:06.20ID:NfkoL/Di
>>201
それはGUIが基本なのかCUIが基本なのかの違いであって
コンソールアプリである必要性とは関係ないよね

別にGUIを基本にしろって主張じゃないよ
ただCUI=コンソールアプリってわけでもないだろうと

203デフォルトの名無しさん2017/12/15(金) 07:32:48.50ID:fJhEByrM
Task<string>型からstream型に変換するにはどうしたらいいでしょうか?
調べてもよく分からず詰まっています

204デフォルトの名無しさん2017/12/15(金) 08:44:02.62ID:tLAi6Ik2
よく分からんけどstringを取り出してからTextReaderかなんかに渡す

205デフォルトの名無しさん2017/12/15(金) 10:24:35.41ID:nTa8GCuy
>>203
何がしたいん?

206デフォルトの名無しさん2017/12/15(金) 22:48:43.84ID:Io6GZfPK
>>205
https://ideone.com/CfSqOZ
こんな感じでurlを投げて返ってきたものをstreamに入れたい

207デフォルトの名無しさん2017/12/15(金) 23:04:26.66ID:Io6GZfPK
// HTTPアクセス
var req = WebRequest.Create(url);
var res = req.GetResponse();
// レスポンスをオブジェクトに変換
Stream s = res.GetResponseStream();
StreamReader sr = new StreamReader(s);
string str = sr.ReadToEnd();

もともとConsoleAppでこう書いて動いてたんだがGUIベースのにしようとしたらGetResponseが使えなかった
代わりにGetResponseAsyncにしたらエラーが出てもっとわからなくなった

208デフォルトの名無しさん2017/12/15(金) 23:08:46.23ID:TZIV/XXh
ナウなヤングはHttpClient.GetStreamAsync

209デフォルトの名無しさん2017/12/15(金) 23:50:34.14ID:aqOMh7+X
低水準言語からC#に戻ってくるとlinqが有能すぎて困る困らない
ienumなんとかいうヤツにforeachないのはなんでなの?魔女のバァさんの呪いか?

210デフォルトの名無しさん2017/12/16(土) 00:22:04.98ID:IGcNQYtz
List<T>.ForEach(Action<T> action) みたいなやつのことかな?
はい副作用ドーン!はLINQとしてどうなのってことで入らなかった

211デフォルトの名無しさん2017/12/16(土) 00:24:11.12ID:ArLhqftT
console では処理を止めても良いから、同期処理でも良い

でも、GUI では処理を止めると、アプリが動かなくなるから、
50ms 以上掛かるものは、非同期処理が推奨

212デフォルトの名無しさん2017/12/16(土) 22:25:24.29ID:GhzhJYge
もっと非同期処理について学んでみます

213デフォルトの名無しさん2017/12/18(月) 22:23:42.36ID:5DMorLlq
Int32へのIntPtrを渡さなければいけないのですが、unsafeコードしか方法はないのでしょうか?
現状、
Int32 int32;
IntPtr intPtr;
unsafe { intPtr = new IntPtr(&int32) }
someObject.someMethod(intPtr);
みたいな感じです。

214デフォルトの名無しさん2017/12/18(月) 22:42:24.23ID:7zt8qegi
>>213
無さそう
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/unsafe-code-pointers/pointer-types
https://msdn.microsoft.com/ja-jp/library/system.runtime.interopservices.marshal(v=vs.110).aspx
そもそもどう使うか思いつかない。
アンマネージで必要ならrefで渡すし

215デフォルトの名無しさん2017/12/18(月) 23:03:00.80ID:5DMorLlq
System.Runtime.InteropServices.ComTypesで用意されてるインターフェース使うと、
IntPtrで宣言されてるんですよね・・
まぁ、自前でrefで宣言しなおしてもいいんですけど。
うーん。どうしよう。

216デフォルトの名無しさん2017/12/18(月) 23:05:43.88ID:5DMorLlq
まぁ、out,ref使わずにIntPtrで宣言すると、null渡せるっての1つの利点ですかね・・
COMインターフェースでオプショナルな引数もあって、そん時はnull渡してくれみたいのもあるんで。
>>213みたくunsafeしなければいけなならデメリットの方が大きそうですけど。

217デフォルトの名無しさん2017/12/19(火) 07:23:44.08ID:FokzMHrG
Marshal.AllocCoTaskMemするとか
new int[1]してGCHandle.AllocでPinnedしてAddrOfPinnedObjectするとか

218デフォルトの名無しさん2017/12/19(火) 13:37:53.98ID:IhvApffy
直接アンマネージにポインタだけ渡すってどうなんだろ
Marshal.AllocHGlobalとかしなくていいのか?

219デフォルトの名無しさん2018/01/06(土) 23:07:58.15ID:RVXlFPlL
いまだにどこまで.Pinnedしなきゃならないのかわからないw
趣味グラマだからわからないままでも問題はないんだけども
C#始めたころはいちいち書いていたが最近はずっと省いているな

220デフォルトの名無しさん2018/01/07(日) 00:09:48.08ID:X58Odkk6
変数がスタックにあるなら要らん
それ以外は必須
GCHandle.Allocは解放漏れでメモリリーク起こす可能性があるしパフォーマンスも悪いからなるべくfixed使った方がいい

221デフォルトの名無しさん2018/01/07(日) 00:21:49.73ID:gMArQtmD
ここはC#アンセーフコードスレですか?

222デフォルトの名無しさん2018/01/07(日) 00:44:39.18ID:Fl8YPIHO
>>220
サンクス
だけどアンマネージ側に渡すのにいちいちunsafeにはしたくないな

223デフォルトの名無しさん2018/01/07(日) 00:52:39.44ID:MTMRs8S5
IntPtrってvoid*相当で型安全もクソもないし
AllocHGlobalもmallocを生で使うのと変わらん
unsafeよりよっぽどunsafe

224デフォルトの名無しさん2018/01/07(日) 03:57:43.36ID:BXo/eClR
C#のスクリプト実行がVSなしでも動かせて、Pythonとかの代わりに使える未来はないかな?

225デフォルトの名無しさん2018/01/07(日) 10:21:20.72ID:EnYFx2jS
>>224
>C#のスクリプト実行がVSなしでも動かせて
これはもうできるやろ

226デフォルトの名無しさん2018/01/07(日) 13:30:19.23ID:6UmxljW6
今のままだとpythonの代わりにはならんわ

pythonは標準のモジュールにスクリプト用やOS周りの便利な機能が組み込まれてる

227デフォルトの名無しさん2018/01/07(日) 13:43:21.05ID:6UmxljW6
pyhtonだと他のコマンドの出力をワンライナーで処理とかあるけど
C#はまあ無理だな

そういう所ですみわけされてる
適材適所

228デフォルトの名無しさん2018/01/07(日) 14:44:36.87ID:wnez5vhA
python だと標準でできて .net だとできないことって何かあるかな?

229デフォルトの名無しさん2018/01/07(日) 15:14:37.45ID:PIbW29V+
jsonくらいか?

230デフォルトの名無しさん2018/01/07(日) 15:24:00.25ID:EnYFx2jS
>>226
たとえば?

231デフォルトの名無しさん2018/01/07(日) 15:34:12.12ID:pcvnpBsv
getoptやargparseのようなものは欲しいと思ったな。その点ではMFCよりも退化してる。

232デフォルトの名無しさん2018/01/07(日) 20:30:21.44ID:5XHMA74k
ウェブサイトのリプレイスでPHPじゃなくてC#で書きたいので
上司を説得するために、PHPよりC#の方が言語的に優れてる点をまとめた

静的型付け
勝手に文字列、数値、真偽値等のプリミティブ型を変換しない
ジェネリクス
LINQ
名前空間名を指定してusing
非同期メソッド
ラムダ式
拡張メソッド
null条件演算子

逆にPHPの方が言語的に優れてる所ってなんだろう・・・
trait?
引数にタイプヒント付けるとnull安全になる所?

233デフォルトの名無しさん2018/01/07(日) 20:36:48.21ID:eDz/bjXs
言語だけじゃなく、開発環境、ライブラリなど総合的に決めるべきやね。
結果は自明だが。

234デフォルトの名無しさん2018/01/07(日) 20:40:46.23ID:7cGFvSiG
>>232
WebならC#は言語云々というよりプラットフォームの制約で選ばれるものだと思うぞ
サーバーがWindowsならC#はMSが強く推奨する第一の選択肢であり、よほどの理由がなければ他を使うべきではない
Linuxなら今では.NET CoreもあるけどPHP使ってるようなところの手に負えるもんじゃない

235デフォルトの名無しさん2018/01/07(日) 21:06:28.11ID:5XHMA74k
PHP製サイトはフレームワーク使ってるけど
考えなしに機能拡張し過ぎたため
自分が入社した頃には既にコントローラーが大変なことになってて
このままじゃヤバイから書き直す事になった

>>234
なんか難しいのか
今時はDockerですぐ動く環境ができる感じじゃないの?

.NET CoreはDockerで作ったことは無いけど
PHPでテスト用の環境は作った事がある

236デフォルトの名無しさん2018/01/07(日) 21:13:58.77ID:5XHMA74k
バックエンドだけC#で書いて
Angular等をフロントエンドに使う事を推す人も居るけど
RazorViewより良いの?

AngularやReact、Vueは別にクライアント側でしか使えない訳じゃなくて
node.jsでサーバーサイドでも使えるらしい

237デフォルトの名無しさん2018/01/07(日) 21:27:07.65ID:X58Odkk6
Linuxでちゃんとした言語使いたいならJavaでいいだろ
言語機能が不満ならKotlin使えば>>232は全部満たしてるぞ
リプレースでやるにはDocker&.NET Core&C#全部新規導入なんてリスクが大きすぎるし、
成長という観点を込みにしてもそれだけのコストをかけるほど価値のある選択とは思えん
DockerってことはAWSかなんかだろ?
どうしてもC#に拘るんなら素直にWin鯖立てとけ

238デフォルトの名無しさん2018/01/07(日) 21:27:26.11ID:pcvnpBsv
SPAはサーバー負荷を抑えられるのが良いね。
せっかくのSPAフレームワークをわざわざSSRするのはメリットがよくわからん。

239デフォルトの名無しさん2018/01/07(日) 22:17:08.87ID:EnYFx2jS
>>237
なぜDockerからAWSになるんやwww

240デフォルトの名無しさん2018/01/07(日) 22:19:38.07ID:5XHMA74k
言語に関してはKotlinに変えるのもC#に変えるのも同様にリスキーな気はする

.NET Core 1.0が出てから1年半しか立ってないからエコシステムの充実度的には劣るかもしれないけど
何も無い訳じゃないよね
Windows固有の物使ってなければ今までの物も移植可能な訳だし

>>238
SEO的にはサーバーサイドレンダリングもした方が良いと聞く

241デフォルトの名無しさん2018/01/07(日) 23:00:33.14ID:6UmxljW6
フロントエンドもバックグラウンドもtypescriptが一番まともな仕上がりになる
従事者数が全然違う
フレームワークの開発者のレベルも違う

asp.net coreが10年もつとは思えん
MSがあっさり捨てて5年後はなくなってるかもしれない
asp.net coreがこれからだと思うのはセンスない
今も死んでるのになんで選ぶ?

242デフォルトの名無しさん2018/01/07(日) 23:07:23.71ID:yGWRqm9V
そらマルチプラットフォームに対応せにゃ生き残れんからやろ
あれ?Windowsじゃなきゃあんま美味しくねぇな?

詰んだな

243デフォルトの名無しさん2018/01/07(日) 23:43:28.08ID:PKM7GNQh
>>241
いまどき10年も同じテクノロジーを使えると思う方がおかしい

244デフォルトの名無しさん2018/01/07(日) 23:52:06.88ID:EnYFx2jS
>>241
>今も死んでる
ソース

245デフォルトの名無しさん2018/01/08(月) 01:16:56.62ID:KwTiDosF
本当に素晴らしいテクノロジーは登場とともに
コアなサポーターがつく
残念ながらasp.net coreは誰の噂にも上らない
そもそも知られてない
多分web開発者が100人いるとしても知ってるのは3人ぐらいだろう
web開発者の間ではASPというワードは別の意味でしかとらえられない

246デフォルトの名無しさん2018/01/08(月) 01:27:26.76ID:oFrueEmX
はいキチガイ

247デフォルトの名無しさん2018/01/08(月) 01:32:22.74ID:KwTiDosF
ASP.NET Advent Calendarが2016年まであったけど2017年は消滅した

248デフォルトの名無しさん2018/01/08(月) 01:33:16.77ID:KwTiDosF
>>246
どこのまともな大手企業がasp.net使ってるって?

249デフォルトの名無しさん2018/01/08(月) 01:36:46.96ID:tZ76zhIV
キチガイに触んなよ

250デフォルトの名無しさん2018/01/08(月) 01:38:06.32ID:KwTiDosF
asp.net coreがこれからだとか
web開発者の間で知名度が高いなんて思ってるほうがいかれてるわ

謙虚になって状況見ろよ

251デフォルトの名無しさん2018/01/08(月) 08:29:26.39ID:PHOgi6B0
言語なんて主要なDBとORMに対応しててCRUDが書ければ
好きなの使えば良い

252デフォルトの名無しさん2018/01/08(月) 09:42:56.16ID:uW1MVRIb
公式の.NET CoreのデバッガーはVisual Studio Code/Visual Studio/Xamarin Studioでしか動かせない
規約で禁止されてる

https://github.com/dotnet/core/issues/505

JetBrainsのRiderは独自の実装を書いて動かしている
.NET Coreはなんか中途半端なオープンソース化だな

VSやXamarin Studio、Rider以外でデバッグするにはMonoしか無いって事なのか
でもMonoだとライブラリの対応がどうなのか

253デフォルトの名無しさん2018/01/08(月) 17:26:40.65ID:MM2bwnQX
EF Coreで[ConcurrencyCheck]属性を使って同時実行制御をしたいのですが
IQueryableをToList()で複数取得しようとするとTrackingされなくて困っています
SingleOrDefault()ならTrackingされて正しく動作します
やりたい事はデータをListで複数件取得して、それらの値を変更してUpdateRangeでまとめて更新したいです

どなたか解決策を教えてください

254デフォルトの名無しさん2018/01/09(火) 22:28:44.52ID:GTddlW8V
>>253
軽く試した範囲ではコンテキスト内ならListでもトラッキングされてるし
コンテキストまたいでもUpdateRangeで変更としてマークされて更新されたけど

勘違いじゃなければミニマムコードどっかに上げて

255デフォルトの名無しさん2018/01/09(火) 23:10:43.20ID:DIgE/yw0
ASP.NET以外にWebフレームワークってある?
Nancyぐらいしか見当たらない
他言語だと色々選択肢があるのに

256デフォルトの名無しさん2018/01/09(火) 23:28:00.30ID:i2N64X6y
迷わなくて楽じゃん

257デフォルトの名無しさん2018/01/09(火) 23:50:40.75ID:fgvZnukn
MVCの出来が良いからあえて他を選ぶニーズがない

258デフォルトの名無しさん2018/01/09(火) 23:52:55.17ID:V7ZjzcjU
>>255
ASP.NETの中にいろいろあるやろ

259デフォルトの名無しさん2018/01/10(水) 00:14:38.81ID:oFasEgAN
NancyがASP.NET MVCより良い点は
この辺に書いてあった

http://blog.jonathanchannon.com/2012/12/19/why-use-nancyfx/
https://codeopinion.com/why-use-nancy/

・ルーティングが少ないコード量で書ける
・設定を出来るだけ少なくしている
・サーバーのレスポンスをテスト出来る
・TinyIOCで自動で依存関係を解決(他のIOCコンテナも一応使える)
・パイプラインフック(リクエストの前後で処理を実行)
・Content Negotiationで、ルートでResponse以外を返した時にResponseに変換
・何処でもカスタマイズ・拡張可能

ORMとかは付いてないから自分で好きなのを選んで使うスタイル

260デフォルトの名無しさん2018/01/10(水) 01:16:21.30ID:CFucH4eA
>>254
確かめて頂きありがとうございます
あれから試行錯誤して、OrderBy()の前にTake()を使うとTrackingされないことが判明しました

何故このような動作になるのか、どなたかご教授ください

261デフォルトの名無しさん2018/01/10(水) 02:31:16.64ID:lJNIeF4g
>>260
そんな動作にはならないから
お前の勘違いかお前が何か変な事してると思われ

とりあえずコード晒せや

262デフォルトの名無しさん2018/01/11(木) 20:18:43.43ID:IXbJ/o0c
1月の月例アップデートのKB4055532がおそろしくバグってるらしい
.net frameworkで文字化けしたり意味不明なエラーが連発したり突然アプリが落ちたりするそうだ

急にアプリの挙動がおかしくなったらまずそこに注意

263デフォルトの名無しさん2018/01/12(金) 16:30:11.62ID:VxcDYdZu
今C#でゲーム作る時unity以外で作れるフレームワークある?

264デフォルトの名無しさん2018/01/12(金) 16:31:56.51ID:OH7R1+qF
UnrealEngine4が使える。
俺はエアプだけど。

265デフォルトの名無しさん2018/01/12(金) 16:31:57.20
ない

266デフォルトの名無しさん2018/01/12(金) 16:42:06.23ID:VxcDYdZu
3年前にXNAやってたけどもう意味ないよな?開発終了してるし、基礎勉強なら使えるかもしれないけど

267デフォルトの名無しさん2018/01/12(金) 17:13:36.62ID:+oVOGpJh
>>266
MonoGameがXNAのオープンソース化移植だからコードほぼそのまま動くで

268デフォルトの名無しさん2018/01/13(土) 12:28:38.59ID:V4m1sF41
C#で書かれたライブラリをネイティブコードにコンパイルして他の言語から使うって出来るんですかね?
ターゲットとなるアーキテクチャはIA32/AMD64系に限らずARM系なども含みます
MonoはLLVMを使っているらしいので出来そうな気もしますがそのような記事を見つけられず・・・

他の言語で使いたいライブラリはttps://github.com/vvvv/SVGです(SVGをレンダリングしたい)

269デフォルトの名無しさん2018/01/13(土) 13:01:40.70ID:we00kWgL
C#を動かすにはプロセス内でホストするなり別プロセスなりで必ずCLRを起動しなければならないので、
アンマネージコードから普通に呼べてクリーンで自己実行なライブラリを作るのはどうやっても無理

270デフォルトの名無しさん2018/01/13(土) 15:41:26.57ID:qrxuDtvr
>>268

たぶんこれがやりたいことに近いハズ

https://github.com/mono/Embeddinator-4000

271デフォルトの名無しさん2018/01/13(土) 21:47:02.08ID:V4m1sF41
>>269
ありゃ、そうなんですか。.NET NativeやLLILC、SharpLangなどネイティブコードへコンパイルする処理系の
があったらしいのでネイティブコード化できるのかなと思ったのですがそう上手い話はないのですね

>>270
これはMono上で動いているライブラリを他の言語から使うラッパーでしょうか?
Monoが動く環境でないとダメか・・・

272デフォルトの名無しさん2018/01/13(土) 21:56:24.98ID:SF/1jAGz
ググったら普通にC++のSVGライブラリヒットするんだが・・・

273デフォルトの名無しさん2018/01/13(土) 22:33:22.57ID:qrxuDtvr
>>271
ああそうか、「他の言語から使う」条件しか満たしてないね。
ネイティブコードにコンパイルしたいって書いてあったね。
しゅまん、これはmonoの上で動くやつ。

274デフォルトの名無しさん2018/01/13(土) 23:01:40.46ID:V4m1sF41
後出しだけど情報を小出しにするのも問題が大きいだろうから現状を。長文失礼

テキストなどの平易なベクターデータ(線、箱、円、文字など)をラスターデータに変換する
ラスタライザーが欲しい。ラスタライズ動作をカスタマイズできるとなお良い
ラスタライズ動作をカスタマイズしたい理由は最終的に欲しいラスターデータが2値モノクロなので
アンチエイリアスの有無や線幅等を調整できる必要があるため

動作させるプラットフォームはWindowsやLinux等を考えているけどOS無しでの動作もあり得るかも
呼び出す側の処理系はCかインタプリタなどからC経由で呼ぶ予定
最初はHTMLのレンダリングエンジンを検討したけどChromiumにしろFirefoxにしろカスタマイズして
実装する的な例を見つけられなかったのと無題に大規模になることもあって断念

次点としてSVG単体での利用を検討しはじめてイマココ。ググってみるとSVGのレンダラーとして
見つかったのはlibrsvgと>>268くらい。前者はGPL/LGPL故に一緒に使用可能なライブラリが制限されるし
後者はC#なのでネイティブで使えない?

う〜む。MonoってOS無しで動作させたり出来るのだろうか・・・

>>272
C++なSVGレンダラーってあったっけ・・・参考までにどれでしょうか?

275デフォルトの名無しさん2018/01/13(土) 23:05:29.28ID:we00kWgL
>>274
Y A G N I

276デフォルトの名無しさん2018/01/14(日) 01:30:55.83ID:3JD+q1Pj
>>274
OS無しも考慮するとなると、C#板ではキツイのでは?
CまたはC++板での相談を推奨かな。

277デフォルトの名無しさん2018/01/14(日) 08:49:46.58ID:9SaBamh2
>>274
librsvg はlgpl2としても使えるように見えるけど、何か問題あるん?

278デフォルトの名無しさん2018/01/14(日) 11:56:09.47ID:TQ+v9n4/
> テキストなどの平易なベクターデータ(線、箱、円、文字など)をラスターデータに変換するラスタライザーが欲しい。

WindowsならネイティブAPIのDirect2Dそのまんまなように思えるが
(最近だと部分的にSVGのサポートも入り始めた)

279デフォルトの名無しさん2018/01/14(日) 12:29:24.23ID:vdiXiAP2
OS無しもとか言ってる奴に
> WindowsならネイティブAPIのDirect2Dそのまんまなように思えるが
とか人の話を聞く気がないのか壊滅的に理解力がないのかどっちなんだろ...

280デフォルトの名無しさん2018/01/14(日) 13:03:40.79ID:7MpxOyR3
そこまでのマルチプラットフォームを求めるなら、
俺ならAWS LambdaとかでWeb API 作ることを検討するわ

281デフォルトの名無しさん2018/01/14(日) 13:12:54.33ID:TQ+v9n4/
>>279
> WindowsやLinux等を考えているけどOS無しでの動作もあり得るかも

そもそもそのへんハッキリしねえから選択肢の一つとして紹介しただけだしなあ
SVGの直接的なサポートは別としてレンダリングの細かい要求は満たしてるしね

282デフォルトの名無しさん2018/01/14(日) 14:04:54.87ID:dCYCQwP3
>>281
> Linux等を考えているけど
って書いてあるのに、バカの上塗り? w

283デフォルトの名無しさん2018/01/14(日) 15:16:42.86ID:XENUVEJC
>>282
こういう人に絡むだけで何も建設的なことを言わない(言えない)馬鹿、
生きてて楽しいのかね

284デフォルトの名無しさん2018/01/14(日) 15:29:59.95ID:DgdnagvN
> こういう人に絡むだけで何も建設的なことを言わない(言えない)馬鹿
自己紹介乙

285デフォルトの名無しさん2018/01/14(日) 16:50:35.10ID:iZ5qlkt1
いまどきオマエモナーとか何時代だよ

286デフォルトの名無しさん2018/01/14(日) 17:25:05.18ID:YC2cce4R
ぬるぽ

287デフォルトの名無しさん2018/01/14(日) 17:56:26.44ID:LoHxEWvM
OSを動かせるハードウェアを用意して>>270で行くかラスタライザーを新規作成するかのどちらかになるのかな

>>277
LGPLの波及範囲は諸説あってはっきりしないのでライセンスがらみのトラブルを回避する上でも避けたいです

288デフォルトの名無しさん2018/01/14(日) 19:20:57.34ID:pIEAW1SE
C#の話題ではないな
終了

289デフォルトの名無しさん2018/01/14(日) 20:44:54.53ID:ZtH88FLC
頭悪いから再開するぞ
よく見てろ

290デフォルトの名無しさん2018/01/16(火) 15:45:19.73ID:ZKrd/Rqh
MVC5で質問です。
スキャフォールディングのEditアクションでキー項目はテキスト
それ以外のみinputにしようとしています
ビュー作成直後は全てinputで作成されますが
その後、キー項目だけテキストに変えるにはどうしたらよいでしょうか?
EditorForをDisplayForに変えるとなにも表示されなくなりDisplayNameForに変えるとモデルのプロパティの属性のDisplayNameで設定した文字列が表示されてしまいます。

291デフォルトの名無しさん2018/01/16(火) 17:21:24.89ID:ZKrd/Rqh
解決いたしました
バインドされているモデルがnullなのが原因でした
しかしnullなのにEditorForだと前の画面の値が引き継がれて表示されてるんですよね
腑に落ちないところもあるのですが、、
ありがとうございました

292デフォルトの名無しさん2018/01/18(木) 06:35:33.53ID:GdcUDZY8
小さいrestサービスだからHttpListnerでWindowsサービスで作ったけど
素直にWebサーバー立てた方が幸せでしょうか

293デフォルトの名無しさん2018/01/18(木) 07:49:32.82ID:Ve4ndohO
社内利用の小さいやつならべつにそれでいいんじゃない?

294デフォルトの名無しさん2018/01/18(木) 08:28:58.34ID:8YG3n4Ol
クラウド使えよ
AWS & API Gateway & Lambdaとかなら仮想マシンすら必要ないぞ

295デフォルトの名無しさん2018/01/18(木) 09:59:22.28ID:MkIzNEag
>>294
オーバースペックやろ
知らんけど

296デフォルトの名無しさん2018/01/18(木) 10:50:13.65ID:P7FxR2VG
クラウド使いたいけど私の会社はまだ許可されてないのです
多分来期予算取れるからその時移行出来るようにはしたい

今後はわからんですが今のところユーザー少ない&社内のみなのでこれでいいかなぁ

気になるのは同時に接続来たらそれぞれスレッドが別になるのでしょうか

297デフォルトの名無しさん2018/01/18(木) 10:58:27.27ID:2PwBukRJ
クラウド工作員うぜーな

298デフォルトの名無しさん2018/01/18(木) 11:12:16.64ID:8W9zeKhd
>>295
サーバーレスなら自分でサーバーやサービス作るよりよっぽど簡単だぞ
金も社内のみなら余裕で無料枠に収まる

299デフォルトの名無しさん2018/01/18(木) 12:01:18.90ID:9519fNi8
無料枠とかあるの?

300デフォルトの名無しさん2018/01/18(木) 12:05:49.79ID:GUMQumqd
サーバーやクラウドの運用はC#の話なのか

301デフォルトの名無しさん2018/01/18(木) 12:14:21.69ID:+BBtUcLA
答えられなくはないけどスレ違いと言われればそうだな

302デフォルトの名無しさん2018/01/18(木) 14:38:42.96ID:QV0p8ilw
>>298
何と比較してるかよく考えてごらん

303デフォルトの名無しさん2018/01/25(木) 07:27:02.04ID:sgwDXLm5
自分はPHPとJavaScriptしかやったことがないので、WindowsのGUIアプリ開発は初めてです。
WindowsフォームとWPFをちょっといじりましたが、
WindowsフォームはUIをマウスで配置して動作を与え、
WPFはHTMLのようにUIはMLで記述する感じであとはフォームとやることは同じかなって思ったのですが、
この両者の違いはフレームワークの違いだと思いますが、
自分的にはWebからきたのでWPFのほうがしっくりくるのですが、
調べると重いとかで流行ってないらしいので、情報量的にもフォームのほうがいいのでしょうか?
UWPはインストールが面倒だったのでスルーしましたが、今からならUWPがいいですか?
あとC#ではC++にあるらしいWin32プロジェクトは出来ないのでしょうか?
どれ選べばいいのかわからなくて困っています。

304デフォルトの名無しさん2018/01/25(木) 09:28:09.18ID:b1M/YkaV
要件次第

305デフォルトの名無しさん2018/01/25(木) 09:56:25.38ID:NsBjyJ7C
Webの経験あるんならElectronでいいんじゃない?
WinFormsもWPFもとっくの昔に開発終了してるから今更新しく入るのはお勧めできないな

306デフォルトの名無しさん2018/01/25(木) 10:37:24.83ID:AmkE5KAD
Electron使うならC#で在る必要性がないような・・・・

307デフォルトの名無しさん2018/01/25(木) 11:29:45.90ID:sgwDXLm5
レスありがとうございます。
>WinFormsもWPFもとっくの昔に開発終了してるから
それは衝撃です。
ビルドしてテストした感じ前者はビルド速度もリソース消費も良く、UIも期待通りで、
後者はビルドが遅くて、UIも表示通りにならなかったり、テストするのは面倒だなという印象でしたが、
もう改善が見込めないんですね。
UWPはWPFよりっぽいので、心配ですが、UWPをインストールして触ってみます。
いずれXamarinやUnity使ってみたいのもあって、C#の勉強をしてるので、
しばらくはVSでWindows用のアプリケーション作りながら頑張ってみます。

308デフォルトの名無しさん2018/01/25(木) 11:55:18.40ID:Fo/ckcIY
割と最近になってWinformsにHiDPI対応強化やWPFもスタイラス対応強化が入ったりしてるから
とっくの昔に開発終了は語弊があるけどね
とはいえMS自身の都合による突発的な更新という意味合いが強く
積極的にフィードバックを受けての修正や強化というフェーズはUWP以外終えてる感はある

.NETという基盤やIDEは優れているのに肝要のGUIフレームワーク選びでgdgdになるのマジうんこ

309デフォルトの名無しさん2018/01/25(木) 16:45:28.98ID:89fISl4P
UWPとWPFは似たようなものだから、どっちから学習しても問題なし。
覚えたことは簡単にUWPからWPFまたはWPFからUWPに移行できる。
そりゃ、コントロールとか微妙に違ったりすりけど、大きな問題にならんだろう。

xamlの機能に違いがあったりと、高度な事をやろうとすると差がでてくるけど。

だから、学習フェーズの普通の事する分にはどっちから入っても問題なし。

310デフォルトの名無しさん2018/01/25(木) 16:51:20.84ID:89fISl4P
>WinFormsもWPFもとっくの昔に開発終了してるから
後、WPFにもFluent Design対応ぐらいはくるんじゃないの?

311デフォルトの名無しさん2018/01/25(木) 17:40:23.41ID:wJAGA7/R
>>310
そういうお仕着せ的なものを持ち込むのはWPFの思想にそぐわないからそれはないよ
WPF的には、開発者が望むならFluent Designを実装できるだけの機能を備えている、で十分
そういうDIYな思想こそがWPFが使い辛いと言われる最大の原因でもある

312デフォルトの名無しさん2018/01/25(木) 19:10:14.30ID:89fISl4P
去年のBuild2017のセッションの資料に明言じゃないけど、それをにおわせる
ような事が書いてあったんだけどね

313デフォルトの名無しさん2018/01/25(木) 20:47:58.93ID:4wfdsI+N
>>311
備えているならせめてForm時代と同じことさせてくれよ
なんでListViewの罫線自分で描かなきゃいけないんだよ

314デフォルトの名無しさん2018/01/26(金) 09:47:56.58ID:fiAB4bjj
WPFはおわったんだ
それをまた何十人〜何百人のチームを作ってわざわざ新しいものを実装するだろうか?

315デフォルトの名無しさん2018/01/26(金) 21:19:07.38ID:WiPs5FQl
.Net Frameworkのバージョンアップの内容追うと、WPFも地味に改良されてるけどね。

316デフォルトの名無しさん2018/01/28(日) 22:51:48.28ID:EAfEAz/a
開発が終わったとか時代が終わったとか言われても趣味でやる分にはWinFormが一番楽
仕事でやる人は逆に何でも対応しなきゃならないだろうし

317デフォルトの名無しさん2018/01/29(月) 02:02:18.45ID:0ju9RGha
winformしたできんのだけどどうしたらええねん

318デフォルトの名無しさん2018/01/29(月) 13:27:25.02ID:vGlopv/e
あと10年は使えるだろ

319デフォルトの名無しさん2018/02/01(木) 10:15:12.44ID:Odjas+cj
コマンドラインのオプションを解析・パースするエレガントなLinqを教えてください

例えば、
-i "hoge.txt" -i "fuga.txt" -o "hogefuga.txt"
というコマンドを受け取った時、
{
 "i" : [ "hoge.txt", "fuga.txt" ],
 "o": [ "hogefuga.txt" ]
}
こんな結果に変換したいです
GroupBy()を使えば出来そうな気がするのですが上手くいきませんでした

320デフォルトの名無しさん2018/02/01(木) 11:19:11.59ID:DhFBeVpN
実用になるものはメソッド使わない限り無理だよ

321デフォルトの名無しさん2018/02/01(木) 11:32:56.22ID:jtx9E0YE
標準Linqだと辛いので拡張書くかな

少なくともコマンドラインオプションとオプションの引数をひとまとめにするやつは欲しい感ある

322デフォルトの名無しさん2018/02/01(木) 11:39:56.90ID:DhFBeVpN
クラス使わないと非常に汚いことになるし
オプションの設定を渡さないといけないのでlinqだけでは不可

たとえば-sがオプション必須かどうかがパーサーにはわからない

a.exe -s a.txtが

(a.exe)(-s a.txt)か
(a.exe)(-s )(a.txt)か

323デフォルトの名無しさん2018/02/01(木) 11:50:41.19ID:DhFBeVpN
c#ができたころからコマンドラインオプションの話はずっと言われてる
昔から独自実装したものはあちこちにある

324デフォルトの名無しさん2018/02/01(木) 14:33:55.01ID:DcnHhJsN
.NET Coreのdotnetコマンドのビルドが遅い
速くする方法は無いの?

325デフォルトの名無しさん2018/02/01(木) 21:48:27.59ID:ggiRcw5l
コードを全部捨てる

326デフォルトの名無しさん2018/02/02(金) 06:35:27.68ID:Ppc5wcU7
初歩的なことなのですが・・・
ドット(.)を使って他所のメソッドやクラスを引用?してくるのをよく見かけますが
それがメソッドなのかクラスなのか見分けるにはどうすれば良いですか?

(クラス).(メソッド) の場合もあれば
(メソッド).(変数) の場合もあるのですよね・・・?

327デフォルトの名無しさん2018/02/02(金) 07:40:29.94ID:ud20vwzJ
>>326
()の有無

328デフォルトの名無しさん2018/02/02(金) 08:56:47.53ID:yTkbtrtK
>>326
そこだけで確実に見分ける方法はない
VSの色分けやツールチップに頼るしかない

329デフォルトの名無しさん2018/02/02(金) 09:49:26.18ID:YsRGFgsv
そもそもコード上で見分ける必要性ないやんね?

330デフォルトの名無しさん2018/02/02(金) 14:19:01.65ID:gQB0gokN
変数つーかプロパティな

331デフォルトの名無しさん2018/02/02(金) 22:33:25.08ID:Ppc5wcU7
>>327
すみません ()の有無でどう判断が付くのでしょうか・・・?

>>328-330
そうだったのですね・・・
見分ける必要がないのですか 難しいです
プロパティなのですね 気を付けます
教えて頂きありがとうございます!

332デフォルトの名無しさん2018/02/02(金) 22:38:01.14ID:L31SeJyV
>>331
括弧がつくのがメソッドでつかないのがフィールドかプロパティ

333デフォルトの名無しさん2018/02/02(金) 22:41:11.25ID:FQ5FsFAe
>>331
下の例は判断できないけど、上のは後ろに()がつくからメソッドだとわかる

334デフォルトの名無しさん2018/02/02(金) 22:44:04.39ID:Ppc5wcU7
>>332
>>333
そういうことだったのですね
勉強になりました これで少し先に進めます・・・
ありがとうございます! 精進します

335デフォルトの名無しさん2018/02/03(土) 01:03:02.79ID:W49Io0gV
>>334
相談室じゃなくて初心者のほうに行った方がいいな。今回は優しい人がいて良かった。

336デフォルトの名無しさん2018/02/03(土) 05:49:32.16ID:aLwGqXOU
>>335
そういったスレッドがあったのですね;
ありがとうございます 次からそちらで質問をします

337デフォルトの名無しさん2018/02/04(日) 00:03:18.19ID:zMXPgQ7i
>>324
.NET Core 2.1ではビルドのパフォーマンスが大幅に改善されてるらしい
OrchardCoreのビルドで70秒かかってたのが7秒弱に

338デフォルトの名無しさん2018/02/04(日) 13:04:59.39ID:ORFvnFl0
>>337
.NET Core SDKをv2.1.4にして
早くなった…ような気もする

ソースを何も変更してなくても変更をスキャンするのは無くならないんだろうか?
本家.NET Framework+Visual Studioだと
何も変更が無い場合はほぼ一瞬だったのに

339デフォルトの名無しさん2018/02/04(日) 13:35:52.74ID:zMXPgQ7i
>>338
up-to-date checkのことね
この辺見てみ
https://github.com/dotnet/project-system/issues/62

340デフォルトの名無しさん2018/02/04(日) 13:39:20.84ID:zMXPgQ7i

341デフォルトの名無しさん2018/02/05(月) 22:21:50.38ID:ic1wM/+d
Restoreっての毎回してるけど
これやらなかったら早い?

342デフォルトの名無しさん2018/02/05(月) 22:33:20.94ID:v3qWrvGr
たぶんね

343デフォルトの名無しさん2018/02/05(月) 22:58:44.51ID:NyyXMpDu
C#のアプリからエクセルのシートのような罫線や文字が書かれたものをプリンターで印刷したいのですが、プリントオブジェクトで一つ一つ座標を確認して描画しながら印刷するしかないでしょうか
何かいい方法などあればご教示下さい
オフィスが入ってない環境でも実施出来るようにしたいのでエクセルは使えません

344デフォルトの名無しさん2018/02/05(月) 23:22:42.19ID:v3qWrvGr
>>343
オフィスが入ってない環境っていう糞みたいな選択肢を捨てれば幸せになれる

345デフォルトの名無しさん2018/02/05(月) 23:34:01.06ID:SQrOQm2p
>>343
WPFは知らないけどGDI+でちょっとした表を印刷するなんて
たぶん思ってるより簡単だから自分で書いた方が早いよきっと

346デフォルトの名無しさん2018/02/05(月) 23:39:17.25ID:ubowXTd5
htmlで出力→印刷
cssが使える

347デフォルトの名無しさん2018/02/05(月) 23:44:05.24ID:ny8aWquH
>>343
どんな表を想定しているのかわからない。DataGridViewとかはだめなの?
フリーの表計算ソフトインストールしたほうが確実だと思うよ
どっちにしても画面出力ならともかくプリンタ出力はC#だと信用できない

348デフォルトの名無しさん2018/02/05(月) 23:59:26.55ID:SQrOQm2p
ライセンス関係がどうだか知らんけど、まだクリレポもあるみたいだね
でもまあ、余程こった印刷するんじゃなきゃ、自分でゴリゴリ書いた方が早いし応用も利く

349デフォルトの名無しさん2018/02/06(火) 00:39:33.83ID:AA5VxbzV
>>346
これが一番楽で早そう

350デフォルトの名無しさん2018/02/06(火) 00:44:49.14ID:l8gmJN+/
今のHTMLって物理単位で座標やサイズ指定できるの?
俺はまったくいい案だと思わんね

351デフォルトの名無しさん2018/02/06(火) 00:51:18.50ID:oHH9MXTk
HTMLで帳票出力するアプリなんか世の中いくらでもあるだろ
帳票にミリ単位の精度を要求される高度なお仕事お疲れ様です笑としか

352デフォルトの名無しさん2018/02/06(火) 00:56:31.42ID:l8gmJN+/
倒錯してるね
A4ならA4に綺麗に収まるようにレイアウトするなんて最低条件。
子供の遊びじゃないんだから

353デフォルトの名無しさん2018/02/06(火) 01:03:02.80ID:oHH9MXTk
そんなくだらない仕事に誇りを持てるなら幸せなことだね

354デフォルトの名無しさん2018/02/06(火) 01:55:56.74ID:ZfaRyY6g
あるフォルダにexe配置して、複数人で同時起動する場合log吐き出し等、PC事に吐き出せますか?

355デフォルトの名無しさん2018/02/06(火) 02:23:02.17ID:Ss12EoFr
>>354
もう少し詳しく

356デフォルトの名無しさん2018/02/06(火) 06:38:37.96ID:cOwJgUBz
>>343です
レス頂いた方ありがとうございます
基本的には地道にやるしかないんですかね
GDI+はもう少し調べてみます
html+cssは確かにかなり使えそうなので今後の引き出し用兼ねて、じっくり試してみてみます

357デフォルトの名無しさん2018/02/06(火) 12:42:53.23ID:ulWyhWyT
Excelをテンプレートにして値を埋め込んで印刷できるツールなら(金を出せば)あるよ

358デフォルトの名無しさん2018/02/06(火) 14:54:48.72ID:7mo44B6C
>>357
得体のしれないものに金を出すくらいならオフィス買えよ…

359デフォルトの名無しさん2018/02/08(木) 23:07:17.93ID:+IVP5b8H
帳票のデータをDBにぶち込むアプリ作ってるんだけど動的なSQL文作成って普通はどういう作り方をするもの?
今は列が2個とか3個だから@"insert〜"ってベタ書きしてsqlparameterで値入れてるけど
元データがファイルならSQLインジェクションは考えなくていいはずだからSQLparameter使う必要はないはずだし
列の数が増えたら改造が大変になるから改修作業が楽になるような作りにしたい
今はSQL文作成部分をDBごとに別々のメソッドで書いてるけどこれも共通化できるもん?

360デフォルトの名無しさん2018/02/08(木) 23:25:56.15ID:OyMXuGyo
>>359
そんな程度のものだったらEntityFrameworkで十分

361デフォルトの名無しさん2018/02/08(木) 23:31:11.72ID:rH5InDMM
パラメーター渡すだけで普通はSQL文はいじらないと思う
テストに困る
SQL専門家がいるところではそんな感じ

362デフォルトの名無しさん2018/02/09(金) 15:57:04.63ID:b+4e2jxg
HTML+CSS+wasm in C#みたいな文脈で開発がしたいにゃ〜

363デフォルトの名無しさん2018/02/09(金) 21:00:14.97ID:MBw5inWy
C#て使われるスタンダードな帳票ツールってなんでしょうか?

364デフォルトの名無しさん2018/02/09(金) 21:06:49.05ID:MBw5inWy

365デフォルトの名無しさん2018/02/09(金) 21:19:54.19ID:qrKjYlTm
>>363
Excel

366デフォルトの名無しさん2018/02/09(金) 21:41:45.33ID:MBw5inWy
>>365
私の会社は運送業界なので荷札とか直接紙で出しています。excelやaccessで帳票出せるのですが、荷札に綺麗に印刷するには各端末の設定に依存していて、変更する度にその設定作業で禿げそうなのです。
あとExcelとかはバージョン管理ソフトで差分見れないのもストレスです。

367デフォルトの名無しさん2018/02/09(金) 22:22:25.46ID:HaVaZvGA
クリレポって言葉が出た直後のこの質問
分かってて聞いてるとしかw

368デフォルトの名無しさん2018/02/09(金) 23:05:19.26ID:kpmmccpi
http://techoh.net/wpf-control-storyboard-with-code/
このサイトを見て、アニメーションを学んでいたのですが
Rectangleは動くのですが、このRectangleの代わりに画像を動かしたいのですがどうすればいいのでしょうか?
単純にImageに代えただけでは上手く動きませんでした・・・

369デフォルトの名無しさん2018/02/09(金) 23:35:51.17ID:kpmmccpi
自己解決(´・ω・`)

370デフォルトの名無しさん2018/02/12(月) 12:09:33.30ID:1LSHehib
Null非許容型自体は悪くない

標準のclassをNull非許容型にする必要はない
Null許容前提で設計されてるものをなぜ急にNull非許容にする?

クラスをまともに設計してないのか?

371デフォルトの名無しさん2018/02/12(月) 12:14:21.55ID:1LSHehib
意識高い系の人達が標準のclassをNull非許容型にしたいだけ


null非許容にするとこれまでロジックミスでnullになってたものが意図しない初期値になってるだけで
不具合自体が見つかりにくくなる
今までは止まってたからわかったけどそれがわからなくなる

動いてるけど何かおかしい状態が増える

372デフォルトの名無しさん2018/02/12(月) 12:20:49.47ID:1LSHehib
普通だったら今までのを標準にして新しい機能を拡張とする
それが今度は逆でさらっと破壊的変更が入りましたで終わり

373デフォルトの名無しさん2018/02/12(月) 12:24:08.69ID:1LSHehib
>Null非許容型を前提としたものかどうかAssembly単位でも設定できる

アセンブリ単位だと言うことが問題だと思うけど
既存コードはそのまま通せないということ

374デフォルトの名無しさん2018/02/12(月) 12:25:31.74ID:1LSHehib
> >>401
> 大方どっかのチュートリアル通りの手順を踏んだだけで、現在のproposalなんか確認してないんだろうな
> そんなん猿でもできるわ

そちらの猿はやった?
それとも猿以下?

375デフォルトの名無しさん2018/02/12(月) 12:29:13.80ID:1LSHehib
WPF使えないやつは馬鹿
MVVM使えないやつは馬鹿
Rx使えないやつは馬鹿

とか言ってるけど全然普及してない
使えないんじゃなくて使ってないだけ

376デフォルトの名無しさん2018/02/12(月) 12:30:25.68ID:whBTpTMU
ブーイモ MM6d = アウアウウー Saa5
荒らすなボケ

377デフォルトの名無しさん2018/02/12(月) 12:31:07.00ID:1LSHehib
ソース単位で見てこれはどっちの仕様のソースなんだろうかと考えないといけない時点でおかしい

378デフォルトの名無しさん2018/02/12(月) 12:31:43.99ID:1LSHehib
>>376
別人だわボケ

379デフォルトの名無しさん2018/02/12(月) 12:34:19.59ID:mwueXHhJ
(ブーイモ MM6d == キチガイ) == (アウアウウー Saa5 == キチガイ)
これでOK

380デフォルトの名無しさん2018/02/12(月) 12:35:23.62ID:GfEZnF0r
キチガイに触るな

381デフォルトの名無しさん2018/02/12(月) 12:36:44.43ID:1LSHehib
まともに議論できずにキチガイとしか言えないやつ

382デフォルトの名無しさん2018/02/12(月) 12:37:54.77ID:1LSHehib
defaultのclassを非Null許容型に変えるのは破壊的変更ではないのですか?

383デフォルトの名無しさん2018/02/12(月) 12:38:01.85ID:nvLd9H1q

384デフォルトの名無しさん2018/02/12(月) 12:38:40.98ID:1LSHehib
>>383
レスになってない

385デフォルトの名無しさん2018/02/12(月) 12:39:52.02ID:nvLd9H1q

386デフォルトの名無しさん2018/02/12(月) 12:40:47.09ID:1LSHehib
>>385
その方向性は間違っています
今までのレスで示した通り

387デフォルトの名無しさん2018/02/12(月) 12:42:01.68ID:nvLd9H1q
>>386
読めないのね

388デフォルトの名無しさん2018/02/12(月) 12:42:53.75ID:1LSHehib
>>387
そっちこそ俺のレスが回答になってることがわからないなら英語読めてない

389デフォルトの名無しさん2018/02/12(月) 12:43:12.60ID:nvLd9H1q
>>373
>既存コードはそのまま通せない
はいキチガイ

390デフォルトの名無しさん2018/02/12(月) 12:47:16.63ID:3QJayOwt
>>388
あなたの素晴らしい意見をここにどうぞ
https://github.com/dotnet/roslyn/issues/7445

391デフォルトの名無しさん2018/02/12(月) 12:47:27.09ID:f+qeQBRN
こいつふらっとでも暴れてた奴やんけ

392デフォルトの名無しさん2018/02/12(月) 12:48:38.32ID:GfEZnF0r
>>391
誘導に素直に従っててワロタ

393デフォルトの名無しさん2018/02/12(月) 12:48:43.19ID:mwueXHhJ
キチガイと会話できないことを証明する

394デフォルトの名無しさん2018/02/12(月) 12:51:53.86ID:1LSHehib
どうでもいいけど
お前らからまともな話が一切ない

395デフォルトの名無しさん2018/02/12(月) 12:54:12.57ID:ytE+rLOw

396デフォルトの名無しさん2018/02/12(月) 13:00:24.72ID:1LSHehib
>defaultのclassを非Null許容型に変えるのは破壊的変更ではないのですか?
これにすら答えられないんだから言っても無駄か

397デフォルトの名無しさん2018/02/12(月) 13:05:03.06ID:9jDA4Adv
>>396
>>385読んでないのがバレバレ

398デフォルトの名無しさん2018/02/12(月) 13:05:38.10ID:tChdiwjc
>>396
>>390マダー?

399デフォルトの名無しさん2018/02/12(月) 13:05:59.25ID:JscGAjhj
俺は最先端(笑)追いかけるの興味ないんで実際にはどうだか知らないけど、
常識的に考えればMSが既存のコードに重大な影響がでるような破壊的変更を許容するはずがない。

杞憂を通り越して被害妄想にしか聞こえんなあ

400デフォルトの名無しさん2018/02/12(月) 13:13:51.10ID:zF+PsA7+
>>399
今のMSはVSのマイナーアップデートに平気で破壊的変更ブチ込んでくるぞ
C#7.1も正式リリースでバグ出しまくって破壊的変更で修正入れてる
リリースに客のお伺い立てないといけないような連中はもう相手にしてないんだよ

401デフォルトの名無しさん2018/02/12(月) 13:20:50.79ID:z+LniUol
>>400
たとえば?

402デフォルトの名無しさん2018/02/12(月) 13:26:48.25ID:RBv9+MyJ
>>401
nugetの仕様変更である日突然ビルドが失敗するようになったりはする

403デフォルトの名無しさん2018/02/12(月) 13:31:12.47ID:aC0uvLYG
>>402
具体的に

404デフォルトの名無しさん2018/02/12(月) 13:32:03.47ID:GfEZnF0r
>>402
まさかlatestにしてたってオチじゃないよね?

405デフォルトの名無しさん2018/02/12(月) 13:58:33.68ID:owydzqHd
もういやもういやもういやもうや
もう巣に帰る

406デフォルトの名無しさん2018/02/12(月) 14:33:24.42ID:F3ZoN7fb
二度と戻ってくるな

407デフォルトの名無しさん2018/02/12(月) 14:46:39.13ID:TMI0FNbG
>>400
プロジェクトのデフォルト設定では、言語バージョンは最新のメジャーバージョン(C#7.0)を使用するようになっているのだが。

408デフォルトの名無しさん2018/02/12(月) 15:44:48.47ID:Pw+gk9aA
ふらっとがバカの間違った知識自慢であふれていて見苦しい
常駐している奴らはまともに動くコード書けないんじゃね

409デフォルトの名無しさん2018/02/12(月) 16:15:52.25ID:mwueXHhJ
はいはいそういうのはママに教えてほめてもらってね

410デフォルトの名無しさん2018/02/13(火) 04:16:20.96ID:TnW8OQre
初心者です。
C#でMainWindow.xamlのtextbox name=a,b,c を
MainWindow.xaml.csにて配列に格納する場合、どう書けばいいですか?

411デフォルトの名無しさん2018/02/13(火) 04:39:44.73ID:TnW8OQre
質問場所間違えました。
申し訳ないです。

412デフォルトの名無しさん2018/02/13(火) 19:34:05.41ID:TAJsnxHz
C#とは直接関係ないかもしれませんが教えてください。
VS2010で開発したEXEですが、DropBox上で起動するとタスクバーにアイコンが表示されません。
本来表示されるはずのアイコンが「白」で表示されてしまうのです。 

そこで、ローカルの C:\hoge\test.exe といった具合に配置して実行するとしっかりタスクバー上にアイコンが表示されます。

↓の手順も試してみましたがやはりだめです。
これは、Windows 10のアップデートによるバグなのでしょうか?
https://win10labo.info/win10-non-icon/

413デフォルトの名無しさん2018/02/13(火) 19:36:41.97ID:aSpKGeWe
>>412
埋め込みリソースにしてもだめ?

414デフォルトの名無しさん2018/02/13(火) 20:56:31.56ID:TAJsnxHz
>>413
埋め込みリソース????
ちょっと調べてみます。

415デフォルトの名無しさん2018/02/14(水) 01:33:09.58ID:S7evEIWT
C#のコード規約って何かデファクトスタンダードなものありますか?
開発者がDelphiなこともあって一般的でない自負があるのか
自分流に統一できてれば問題がないという感じで緩いのはわかるのですが

416デフォルトの名無しさん2018/02/14(水) 01:42:45.00ID:6afOFwmM
>>415
命名ならこの辺
https://msdn.microsoft.com/ja-jp/library/ms229002.aspx

あとはVisualStudioのコード分析とか
書籍ならEffective C#
来週新刊のMore Effective C# 6.0/7.0も出るぞい

417デフォルトの名無しさん2018/02/14(水) 06:56:03.38ID:gDDPraVt
業務系ではほぼオワコンなので今更コード規約を厳しくしても将来性はないだろう。

418デフォルトの名無しさん2018/02/14(水) 07:15:08.04ID:UFv5UzG3
どこがオワコンなんだよw

419デフォルトの名無しさん2018/02/14(水) 07:51:32.65ID:Dh0Ktwjh
javaと間違えてんだろ

420デフォルトの名無しさん2018/02/14(水) 19:26:47.67ID:nuSxC/3c
codePlex終了はC#終焉への序曲なのか?MSはいつも中途半端で投げ出すからな

421デフォルトの名無しさん2018/02/14(水) 19:47:09.70ID:T5cdiKE6
CodePlexがサービスを終了し、GitHubへの移行が推奨される
https://www.infoq.com/jp/news/2017/04/codeplex-github
>Microsoftは、CodePlexプロジェクトから知名度の高いgitホストへのインポートを効率的に進めるためにGitHubと協力してきた。
>移行手順がプロジェクトのソースコード、ライセンス、およびドキュメントをGitHubに移動する際のガイドラインと共に準備された。
>移行ツールは、イシューの移動をサポートするよう拡張される予定である
>>420
MS自身が移行を積極的にやっていてCodePlexでできた資産まで捨てるわけじゃない

C#がオワコンだろうが趣味でしか使っていないから使い続けるだけ
仕事でやっているけど他はできないって人間が万が一いたらそのままシネ

422デフォルトの名無しさん2018/02/14(水) 20:44:08.44ID:mHtbiGhp
イキリオタク感

423デフォルトの名無しさん2018/02/14(水) 22:31:40.56ID:qgoWYLsw
C#オワコンって本当?なんでそうなったの?

424デフォルトの名無しさん2018/02/14(水) 22:54:23.16ID:ZGkgnCNl
おわってねーよ

425デフォルトの名無しさん2018/02/14(水) 23:07:13.06ID:UlcWCziO
まだ始まってもないよ

426デフォルトの名無しさん2018/02/14(水) 23:51:42.50ID:dK0aWl0x
CodePlex閉鎖とかいつの話だよ石器時代から来たのか?

427デフォルトの名無しさん2018/02/14(水) 23:54:15.24ID:0BZdrCiI
石器時代の話だよ

428デフォルトの名無しさん2018/02/15(木) 18:44:37.89ID:ePyF0aqH
MSがPWAってのに手を出すことになったことで、将来的に需要が縮小する可能性は高くなったな
特にASPは直接的な競合となるから厳しい

429デフォルトの名無しさん2018/02/15(木) 19:02:10.27ID:SuVvVuMr
>>428
何の需要が?PWAとASP.NETは競合(比較対象)にはならないけど

430デフォルトの名無しさん2018/02/16(金) 08:34:37.83ID:CNSe2opu
unityはc#一択
スマホのマルチプラットフォーム開発もザマリンでc#一択
じゃなかったんか

431デフォルトの名無しさん2018/02/16(金) 09:54:19.31ID:Dhy+j0Pn
あのふざけたスライドが無ければそうなっていたかもしれないね

432デフォルトの名無しさん2018/02/16(金) 10:29:53.62ID:WNtzaYjC
名前を言ってはいけないあの人の話はよせ

433デフォルトの名無しさん2018/02/16(金) 12:15:59.73ID:XsXDNXJ5
名前を言えないけどMSMVPのあの人な

434デフォルトの名無しさん2018/02/16(金) 12:47:11.47ID:eIPn6egw
そういう気色の悪いことを平気で掛ける自分を気色悪いと思わなくなったら
もう立派なストーカー予備軍。

どうせキモータなんだろうけど、執着するのはアイドルか2次元にしとけよほんと。
きもっ

435デフォルトの名無しさん2018/02/16(金) 13:45:43.69ID:XsXDNXJ5
はいはい

436デフォルトの名無しさん2018/02/16(金) 21:42:51.86ID:wAiK151t
キmohta

437デフォルトの名無しさん2018/02/17(土) 07:47:44.42ID:uYVlOSlz
C#がだめとして
そしたら次はなにやったらいいの?
JavaScriptとかしょぼいのやらなあかんの?

438デフォルトの名無しさん2018/02/17(土) 09:02:26.67ID:zuMsmH2y
>>437
向いていないからプログラマやめればいいよ

439デフォルトの名無しさん2018/02/17(土) 09:11:00.41ID:JhxlZtl8
ダメとしての意味が分からないけど、
他にもいろんな言語があるから好きなのを使えばいいよ

TypeScript
Python
Go
このあたりがいいんじゃないか

さらにやる気があれば
c++

440デフォルトの名無しさん2018/02/17(土) 11:33:56.32ID:uYVlOSlz
元Pythonistaやで
C++よりはRustがええなあ
でもTypeScript含めてJavaScript系は好きになれんなあ

441デフォルトの名無しさん2018/02/17(土) 12:57:15.63ID:x5wAmZVS
ふらっとスレもそうだけど「C#を使う人の雑談スレ」だと思っている人多いな
こんな過疎っているところでなくマ板に行けばいいのに

442デフォルトの名無しさん2018/02/18(日) 14:16:27.97ID:SXTB1pky
初心者ですが質問させてください。

VisualStudio2017でDLLの作成をしようと思っています。
DLLプロジェクトのなかでSystem.ConsoleやSystem.IO.Pathクラスを使用したいのですができません。
「現在のコンテキストに 'Path' という名前は存在しません。」というエラーです。

コンソールアプリのプロジェクトなら問題なく使用できます。
どうすればDLLのプロジェクトでも使用できるようになりますか?

443デフォルトの名無しさん2018/02/18(日) 14:21:01.88ID:qyjjtJJ+
>>442
エラーが出るミニマムコードを作ってふらっとで質問してください

444デフォルトの名無しさん2018/02/18(日) 16:01:24.88ID:1gDuaBcq

445デフォルトの名無しさん2018/02/18(日) 18:13:44.57ID:SXTB1pky
>>444
Console等はmscorlib.dllだと思うんですが参照の追加をすると「既に自動的に参照されています」と出ます・・・。

>>443
了解しました!

446デフォルトの名無しさん2018/02/18(日) 19:11:32.24ID:uudF1O4B
>>442
プロジェクト間違っているだろ
クラスライブラリ(.Net Framework)を選べ
プロジェクト選択画面の右側に(.dll)を作成するための〜って表示されるはずだから
それでもできないのなら必要なものをインストールしていないか何か余計なことをしている

4474462018/02/18(日) 19:30:14.33ID:uudF1O4B
ヒマだったんで簡単なサンプル
クラスライブラリ
https://ideone.com/Sho1IP
それを利用するコンソールアプリ
上で作ったdllを参照に加えてビルドすること
https://ideone.com/PSzA8t
実行ファイルにドロップされた"*.txt"ファイルをシフトJISとして読込みコンソールに表示するだけ
どっちもVS2017のデフォルトの設定で作られている

448デフォルトの名無しさん2018/02/18(日) 19:35:04.44ID:A6Q2IUc7
dllを作らずに別で作ったプロジェクトを追加して使うのって邪道ですか?

449デフォルトの名無しさん2018/02/18(日) 19:38:05.86ID:SXTB1pky
>>446
クラスライブラリのプロジェクトは全部試しましたができませんでしたね・・・。

「ユニバーサル Windows プラットフォーム開発」というのをインストールしていなかったのでそれを試してみます!
返信していただいてありがとうございます!初心者用のスレは荒れていて質問できる空気ではなかったので・・・

450デフォルトの名無しさん2018/02/18(日) 19:43:58.15ID:uudF1O4B
>>449
それUWPアプリで違うから。できるかもしれないけどインストールしていないんでわからないw
取りあえず書いたとおりにやってくれよw

451デフォルトの名無しさん2018/02/18(日) 21:16:05.35ID:SXTB1pky
>>450
色々やった結果やっぱろプロジェクトが間違ってたいで無事できました。
ごめんなさいお手数おかけしました;;

452デフォルトの名無しさん2018/02/18(日) 21:25:29.22ID:uudF1O4B
>>451
解決できたのならこっちもほっとしたよw
報告お疲れ様です

新着レスの表示
レスを投稿する