ふらっと C#,C♯,C#(初心者用) Part117at TECH
ふらっと C#,C♯,C#(初心者用) Part117 - 暇つぶし2ch237:デフォルトの名無しさん
15/10/18 16:36:13.19 tIhTJhT+.net
>>228
重症の2ch脳だな。酷い馬鹿だ。

238:デフォルトの名無しさん
15/10/18 17:53:35.54 EteQ/5LB.net
VSって#hogeの自動補充機能ないの?

239:デフォルトの名無しさん
15/10/18 17:54:02.78 rT2sf8QY.net
匿名型をちゃんとタプルにしておけば「C#でTupleをnewするコードがクッッソダサイww」
とか馬鹿にされることもなかったのにな
アンダースは細かい使い勝手を改善するような変更に対してすごく保守的だった
拡張メソッドもstaticクラスでしか作れないみたいな嫌がらせを受けたままだし

240:デフォルトの名無しさん
15/10/18 17:56:00.48 hcyPsAl4.net
拡張メソッドはそこいらにばらまかれるより一箇所にまとめとかれるほうがいい気がするからいまのままでいい

241:デフォルトの名無しさん
15/10/18 18:22:39.24 rT2sf8QY.net
recordにパターンマッチがくればデータと手続きの分離が進むだろうから
データクラスと別に手続きクラスを用意するのは自然になっていくと思う
ただ手続きを探すためには圧倒的に.を打ってインテリセンスに名前が出たほうが便利だから
拡張メソッドは第一線で使われるものになっていくだろう
それで拡張メソッドをstaticクラスにまとめること自体はいいんだが
問題はstaticクラスの内部で型が作れないことなんだよなあ
多値を返すためにoutみたいな奇道を使わない場合structを定義しないとどうしようもないが
トップレベルに書くと名前空間が汚れすぎる
まあそれもタプルが来れば解決か

242:デフォルトの名無しさん
15/10/18 21:06:11.60 O3txSH0M.net
ITの技術書籍って8割方意味なくない?
ほとんどはネットでググれば出てくるし
唯一金出して買うって書籍はせいぜい洋書の翻訳版くらいだよな?

243:デフォルトの名無しさん
15/10/18 21:10:59.06 Fyu9IAr8.net
初心者にとって意味があるんだろ
自動アップデートが実装されない限り技術書籍は買う気にならないが…

244:デフォルトの名無しさん
15/10/18 21:11:18.08 S+d/GOeW.net
経験に基づく実践的な内容なら価値はあるんだが、
大抵の技術書の著者って技術評価みたいなことしかしてない奴ばっかりだから
ほんとにネットでググったtipsが羅列されてるだけみたいなのが多い

245:デフォルトの名無しさん
15/10/18 21:13:06.08 1K54QMcp.net
>>235
独学や素人だと結構本が理解の入り口になると思うよ
ただ、記述ミスが結構あって逆に理解に苦しむことがあったり、
著者が理系脳で、わからない人にわかるように表現されてない
わかるひとが読めばわかるが、わからない人が読むとさっぱり・・・
悲しいかな、購入者はわからない人がほとんどなのだけどね
で、ネットの情報や複数の本で補完せざるを得ない
そういう意味ではネットでいいというのもうなずけるけど・・・

246:デフォルトの名無しさん
15/10/18 21:26:39.43 O3txSH0M.net
初心者にとっては意味があるってのも正直分からん
初心者だってググれば知りたい事出てくるんだから、書籍を買う意義の在処が無いでしょ

247:デフォルトの名無しさん
15/10/18 21:41:31.99 CUxV7ZEj.net
>ただ、記述ミスが結構あって逆に理解に苦しむことがあったり、
>著者が理系脳で、わからない人にわかるように表現されてない
>わかるひとが読めばわかるが、わからない人が読むとさっぱり・・・
このへんはネットの情報でもたいして変わらんと思うが。
加えて、ネットだと
・断片的なトピックしか書いてない
・そもそも間違っている
ってのも割合としては多くなるな。

248:デフォルトの名無しさん
15/10/18 22:47:11.00 Fyu9IAr8.net
初心者はぐぐらない
もしくはぐぐるためのキーワードを知らない

249:デフォルトの名無しさん
15/10/18 23:12:02.85 0PlCKIO2.net
書籍のメリットは
情報が主題に沿ってまとまってる
その情報が編集されて主題にそって提示されている
の2点
つまり編集されていると言う事に意義を感じないなら価値はないな

250:デフォルトの名無しさん
15/10/18 23:17:11.53 ZeZpTvFb.net
C#の文法とかデスクトップアプリに関してならネットの情報だけでも十分なんだが
ASP.NET関係だとネットだけだと断片的過ぎてな
初心者は本を買わざるを得ないだろう
おまけに文法本と違って本の選択肢も少ないという問題もある

251:デフォルトの名無しさん
15/10/18 23:21:12.01 1MrL9p77.net
>>243
俺はこの一年でvb、c++、c#、asp.net、js、php、その他全部ネットで習得したよ。一冊も本は買っていない。

252:デフォルトの名無しさん
15/10/18 23:26:42.33 /DhocndZ.net
サーバー側は、C#というかWindowsで組むことないからな、開発者の絶対数が少なくて情報もないって感じだ
自分も作っているのはデスクトップアプリオンリーだし
無料のレンタル鯖にC#で組めるcgiとかできたら嬉しいんだけどね(←時代に置いて行かれたおっさんw)

253:デフォルトの名無しさん
15/10/18 23:30:25.33 ZeZpTvFb.net
>>245
来年登場予定のASP.NET5はリナックスでもMACでも動くという触れ込み
フレームワークがオープンソースの.NET COREに代わる
これで普及すればいいんだがな

254:デフォルトの名無しさん
15/10/18 23:40:24.72 FU6fHshJ.net
ASP.NET5はMVC系ベースで以前のものとは互換性ないんだけどね
MVCの方でいいんなら今でもMonoで動くよ

255:デフォルトの名無しさん
15/10/18 23:46:53.39 1MrL9p77.net
>>246
iisもlinuxに移植されるの?

256:デフォルトの名無しさん
15/10/18 23:47:34.93 /DhocndZ.net
難しい事はええからpublic_html/binあたりにcs書いて、そいつがSystem.Console.OutにHTML書いたらOKにしてください
軽くperl書くノリくらいで、って感じですw

257:デフォルトの名無しさん
15/10/18 23:50:52.54 ZeZpTvFb.net
>>248
iisが移植されることはないでしょ
むしろASP.NET5はwebサーバー依存じゃなくなってるのでアパッチでも何でも動くのが売り

258:デフォルトの名無しさん
15/10/18 23:55:05.84 1MrL9p77.net
>>250
iisの設定画面に慣れているがapacheあまり知らないので不安だなあ

259:デフォルトの名無しさん
15/10/19 00:26:53.06 VNgGX25K.net
入門書にしろ、入門サイトにしろ、初心者は余計なことを考え出して深みにはまる奴いるよなw

260:デフォルトの名無しさん
15/10/19 00:29:12.84 kIMtGLET.net
ペアプログラミング()もそういう意味ではありなのかもな

261:デフォルトの名無しさん
15/10/19 00:48:22.49 pvWtLvxK.net
>来年登場予定のASP.NET5はリナックスでも
何を言ってるんだこのばかは

262:デフォルトの名無しさん
15/10/19 00:53:57.97 cS+kHoUQ.net
>>254
馬鹿はお前

263:デフォルトの名無しさん
15/10/19 02:29:19.17 /AkA90sI.net
asp.net5のホスティングはkestrelがデファクトになりそうかな。
ただ、SSL関連とか、機能が足りないところがあるので、そこはnginxとかapache(+middleware)と組み合わせて使う必要があるかも。

264:デフォルトの名無しさん
15/10/19 03:18:42.76 D6E0OVv3.net
メンドクサそうだな

265:デフォルトの名無しさん
15/10/19 05:27:57.56 c9jTiL6V.net
Bitmapオブジェクトの使い方がよく分かりません
詳しく教えてください
(´・ω・`)

266:デフォルトの名無しさん
15/10/19 06:15:38.35 NjHqWI/s.net
public void Hoge<T>(T t)
ジェネリックメソッドの
引数にインターフェースを入れさせないようにできませんか?
もしくはインターフェースならreturnするような処理を書きたいです
メソッド内で更にTを使ってインスタンスを生成するので
インターフェースだと問題なのです

267:デフォルトの名無しさん
15/10/19 06:37:27.02 E3V4kHKJ.net
>>258
いやです
>>259
public void Hoge<T>(T t) where T : new()
とか

268:デフォルトの名無しさん
15/10/19 07:05:12.11 NjHqWI/s.net
>>260
制約条件というのがあったんですね
ありがとうございます

269:デフォルトの名無しさん
15/10/19 07:26:11.69 v19BRXDY.net
void Hoge<T>(Func<T> factory) {
var t = factory();
のようにデリゲートを渡す手もある
これならインターフェースで問題ないし間接的にコンストラクタに引数渡すこともできる
Func<T>のかわりにLazy<T>でもいいけどやってることは同じ

270:デフォルトの名無しさん
15/10/19 10:54:18.39 NjHqWI/s.net
>>262
デザインパターンですよね?そちらの方がいいのかな?
public static IEnumerable<T> Select<T>(string dbFile, string tableName, string ptn) where T:new()
{
using (var connection = GetConnection(dbFile


271:)) { connection.Open(); try { var sql = "select * from " + tableName + " where name like '%" + ptn + "%'"; return connection.Query<T>(sql); } catch (Exception e) { Console.WriteLine("SelectError={0}",e.Message); } return null; } } こんな感じのdllを作っている途中なんですが



272:デフォルトの名無しさん
15/10/19 10:56:15.66 v19BRXDY.net
そんなもんdapperでいいだろ
作る意味なし

273:デフォルトの名無しさん
15/10/19 11:15:29.47 PGvR7XY7.net
そもそもInterfaceだけ排除したいなんて要件に疑問を持った方がいいと思うよ

274:デフォルトの名無しさん
15/10/19 11:21:13.07 kIMtGLET.net
むしろ入力を制限するためにインターフェース使うパターンの方が多いと思ってたわ

275:デフォルトの名無しさん
15/10/19 16:42:20.38 NjHqWI/s.net
>>265
Interfaceだと
return connection.Query<T>(sql);
ここでエラーになるんです
動的に生成されたあらゆるdbのテーブルにアクセスできるような
関数が書きたいんですが難しくて試行錯誤してます

276:デフォルトの名無しさん
15/10/19 17:04:32.33 6CTsRO/G.net
ウインドウズストアアプリって
難読化とかしなくてもILは読めないものなんですか?
無対策でいけますか?

277:デフォルトの名無しさん
15/10/19 17:08:11.74 D6E0OVv3.net
うおぅ、C#開発中止になった
うぶんつ行き
マイクロソフトもぅあかん・・・なんやってんだよこいつ等

278:デフォルトの名無しさん
15/10/19 17:35:49.86 h/O11m5h.net
>>268
読まれると困るロジックはクラウドにポイしなさい

279:デフォルトの名無しさん
15/10/19 17:38:41.70 bIFzKXU5.net
Bitmapオブジェクトを生成したらBitmapクラスにCreateGraphicsメソッドは無いから
GraphicsクラスのFromImageメソッドを使ってBitmapオブジェクトを渡すとGraphicsオブジェクトを返してくれるんかぁ
FromImageメソッドってなんでFromImageって名前なんですか?
何か許せんなぁ
(´・ω・`)

280:デフォルトの名無しさん
15/10/19 17:40:34.47 yeB94VZ+.net
>>269
風説の流布
MSに訴えられても知らないよ

281:デフォルトの名無しさん
15/10/19 17:44:09.65 6CTsRO/G.net
>>270
What the...

282:デフォルトの名無しさん
15/10/19 17:44:59.65 bIFzKXU5.net
C#よりプチコン3号のほうが
よっぽど分かりやすいわ
(´・ω・`)

283:デフォルトの名無しさん
15/10/19 18:35:23.16 E3V4kHKJ.net
>>274
プチコンやってろよ睾丸AA野郎

284:デフォルトの名無しさん
15/10/19 22:12:15.18 ZagPftKb.net
コマンドソフトもスプリクト言語じゃ作りにくいけど、自分用の自動化ツール作りたい時とかには便利だな
画像の余計な透明削除ツール作ったら画像編集作業が5倍くらい早くなった

285:デフォルトの名無しさん
15/10/19 22:30:31.92 v19BRXDY.net
Winでスクリプト使うならPythonだな
設計思想でC#と共通する部分が多いからC#使いには馴染みやすいはず

286:デフォルトの名無しさん
15/10/19 22:41:25.04 ZagPftKb.net
ただスプリクト言語苦手だからc#でいいや…
3時間あれば自動化ツールくらい作れるし
動型言語は本当に無理

287:デフォルトの名無しさん
15/10/19 22:55:04.13 v19BRXDY.net
スクリプト言語使うかはともかく、画像の余白削除なんかimagemagick使ったらコマンド一発でできるぞ
さらにそのコマンド実行も自動化しようすればスクリプトが欲しくなる

288:デフォルトの名無しさん
15/10/20 01:58:38.69 FqqyKFc+.net
>>271
逆になんて名前をつけるの?

289:デフォルトの名無しさん
15/10/20 02:03:28.20 ihl8OErt.net
>>271
Image側のインスタンスメソッドが存在しない点じゃなくてそっちかw
ImageはBitmapだけじゃないのは理解してるんだよね?

290:デフォルトの名無しさん
15/10/20 03:17:45.27 fy+ITDgZ.net
TypeScript使える

291:デフォルトの名無しさん
15/10/20 20:37:49.08 +C/uSyXL.net
TypeScriptはjavascriptの位置に入っていくもので上にあげられてるような用途には向いてない

292:デフォルトの名無しさん
15/10/20 21:27:22.38 XSRvNUEe.net
node.jsとasp.net mvcなら


293:日本ではどっちが資料豊富だろう



294:デフォルトの名無しさん
15/10/20 21:31:07.79 aserhZ1U.net
>>284
その二つは比較されるものなんですか?
私は後者しか使った事ないんですが、前者は名前だけ知っています

295:デフォルトの名無しさん
15/10/20 21:35:02.48 VizItIQ4.net
node.jsが選択肢に入れられる用途ならnode.jsでいいだろ
ASP.NET MVCって大規模業務アプリケーション向けだぞ?

296:デフォルトの名無しさん
15/10/20 22:53:52.64 n2Rswrrf.net
ASP.NET MVCで大規模とか
悪夢しか想像できないな
中規模の「動けばいい」的なトコしか使い道がない
中途半端な存在

297:デフォルトの名無しさん
15/10/21 00:12:55.70 1DhnI/Al.net
C#はチューリング完全ですか?

298:デフォルトの名無しさん
15/10/21 00:17:50.65 +buqe22N.net
素のnode.jsと比べるなら
フレームワーク使わずに素のC#のHttpListenerだろ

299:デフォルトの名無しさん
15/10/21 02:50:58.77 KS4N6B3g.net
AesManagedクラスでファイルを暗号化しようとしてて、
キーはプログラム内で保持して固定にするつもりなんだけど、IVはどう扱ったら良い?
①暗号化する毎にIVを変更して、暗号化したファイルの先頭に書き出す。
②IVもプログラム内で保持して固定。ファイルには書き出さない。

300:デフォルトの名無しさん
15/10/21 08:02:33.67 J5wjnr6G.net
「レコード」クラスとそれをコレクションするクラスを作成しました
「レコード」クラスの「○○フラグ」は「キーワード」のグループ毎に1件状態にしたい
そこで考えたのが
「レコード」クラスに「○○フラグの変更時に呼ばれるアクション」を追加
「○○フラグ」プロパティのセッターで上記のアクションを呼ぶ(循環呼び出し排他制御付き)
コレクションするクラス側で「キーワード」のグループ毎に1件状態にするメソッドを実装
コレクションに追加する時に「レコード」のアクションにメソッドを呼ぶラムダ式を代入(※)
これで一応期待する動作になるのですが
「レコード」を破棄する時に(※)で代入したアクションはNULLクリアしないと
コレクションからの参照が残って不味いとかあるのでしょうか?

301:デフォルトの名無しさん
15/10/21 08:21:14.32 zYXo0lV4.net
バカはホントに珍妙なこと考えるのな

302:デフォルトの名無しさん
15/10/21 09:06:19.97 7McFBYAy.net
意識高い系の人キター

303:デフォルトの名無しさん
15/10/21 11:04:42.43 ErXzvicf.net
>>290
プログラムがキーを持ってる時点でもうどうでも良くない?

304:デフォルトの名無しさん
15/10/21 12:31:41.91 IzAQ78jc.net
>>291
難しく考えすぎ
そんなもんDictionaryにキーワードとフラグのペアを持たせといてレコードクラスのsetterで更新したらええがな
getterもそのDictionaryから値を取得して返すだけ
Dictionaryのインスタンスはデータコンテキスト的なクラスを作ってその中にラップして共有すればいい

305:デフォルトの名無しさん
15/10/21 15:30:16.81 12+gm44t.net
>>291
全体の一部であるレコードが
全体を視野に入れてユニークかどうか判別するのは
好ましいとは思わないな
その部分は分離したほうがいいよ

306:デフォルトの名無しさん
15/10/21 15:40:29.52 12+gm44t.net
>>291みたいなサンプルコードよくあるよね
UserEntityにdbを操作する静的メソッドを用意する
クラス一つだけで済むのでサンプルとしてはわかりやすいけど

307:デフォルトの名無しさん
15/10/21 16:15:53.93 J5wjnr6G.net
>>295 - 297
レス有難うございます
最初はレコードクラスに「○○フラグChanged」イベントを作り
コレクションクラスでそれを購読して対応しようかと思ったのですが
アクションで代入したらGCの回収対象になるのかな?
もしそうなら購読解除が要らないので少し楽できるかなぁ的な安易な考えでした
他の実装方法も含めて勉強してみます
重ねて


308:有難うございました



309:デフォルトの名無しさん
15/10/21 16:26:42.47 12+gm44t.net
なんで初心者って見栄えや速度、GC、シンプルなコードを気にするんだろ
まず動くもの作って問題が出てから考えればいいのに
CLR使っている以上単純なコンソールアプリですら100MB以上も容量食うんだよ?
その上で数KBのメモリ増減なんて気にすることあるのかって思うわ

310:デフォルトの名無しさん
15/10/21 16:41:42.12 3TuEHh7e.net
>CLR使っている以上単純なコンソールアプリですら100MB以上も容量食う
なんだ初心者か

311:デフォルトの名無しさん
15/10/21 17:31:13.67 vLvdh1RP.net
よくわかってない状態で無理にメモリや速度、気にした結果、逆効果ってことはよくある。
例えば、クラスは、ヒープ汚すから構造体で…とかやってると、コピーコストで速度低下、結局見えないところでボクシングしまくってGCに負担掛けるとか

312:デフォルトの名無しさん
15/10/21 18:58:14.00 IzAQ78jc.net
なんでも一般化しようとするのは初心者にありがちなパターン
~Changedみたいなのが出てきたら、本当にそこに拡張性を持たせる必要があるのかどうかよく考えたほうがいい
仕事でやってないと、クラスのインターフェイスといえば.NETのコンポーネントみたいな本当に一般的なものばかり目にするから
ああいうふうに作るものだと誤解しやすいんだろうね

313:デフォルトの名無しさん
15/10/21 19:19:34.54 vLvdh1RP.net
無理によくあるデザインパターンを取り入れようとして手段と目的が逆になるやつか。

314:デフォルトの名無しさん
15/10/21 19:34:17.96 3TuEHh7e.net
初心者としてはそのプロダクトで損をしても
教育的効果として無理からデザパタに従うということもある
どっちがいいか分からんね

315:デフォルトの名無しさん
15/10/21 19:35:01.65 1DhnI/Al.net
Observerの一つがフィールドを変更

Subjectに変更を通知

Subjectが全Subjectに通知
このObserverモデルっておかしいですか?

316:デフォルトの名無しさん
15/10/21 22:05:26.95 17YEFPhW.net
>>305
それ以前にObserverを根本的に誤解している
ObserverパターンではSubjectがイベントソースでObserverがイベントリスナだぞ


317:デフォルトの名無しさん
15/10/21 23:04:08.68 w/HuBnl5.net
observeなんて義務教育レベルの語彙だろw

318:デフォルトの名無しさん
15/10/22 17:12:48.15 YiIFkN4t.net
みなさんは
変数とかメソッドを選択したい時に
Ctrl+Shift+矢印キーで
選択してますか?
(´・ω・`)

319:デフォルトの名無しさん
15/10/22 17:25:22.18 YiIFkN4t.net
例えばPointを選択してF12を押したら
Pointが使われている定義がズラ~っと出てきますが
…public static bool operator !=(Point left, Point right) とか見て
『アンタ、何が言いたいん?』とかなりませんか?
(´・ω・`)

320:デフォルトの名無しさん
15/10/22 17:32:27.87 CeSwqlxw.net
定義に移動でソースが無いやつの話か、別にどうとも思わんけどなあ
あとCtrl+Shift+→ってなんだろ、Ctrl+Jの補完ならよく使う

321:デフォルトの名無しさん
15/10/22 17:33:20.51 CeSwqlxw.net
あーCtrl+Shift+↑↓か、使ったこと無いや

322:デフォルトの名無しさん
15/10/22 17:44:46.67 YiIFkN4t.net
もしかして切り取りやコピーしたい時、
マウスで選択してるの?
(´・ω・`)

323:デフォルトの名無しさん
15/10/22 17:49:06.91 YiIFkN4t.net
今まで書いたソースが突然のフリーズでムダにならないように
ひと息つくたびに無意識にCtrl+Sを押してる自分がいる
(´・ω・`)

324:デフォルトの名無しさん
15/10/22 18:04:16.53 W3MdSzAO.net
またしょうもないのが現れた

325:デフォルトの名無しさん
15/10/22 18:11:10.89 CeSwqlxw.net
Ctrl+クリックは素晴らしいよなw
どれだったかデフォルトじゃなくなってどうなることかと思ったが
復活してよかった

326:デフォルトの名無しさん
15/10/22 18:12:22.29 YiIFkN4t.net
眠いから寝ます
おやすみー
(´・ω・`) /

327:デフォルトの名無しさん
15/10/22 19:56:27.34 PAakFcEe.net
URLリンク(ideone.com)
これは正しく動くんですが
URLリンク(ideone.com)
これは動かない(DataContextのLevelに何を入れてもMin


328:imumの16になってしまう)原因に 心当たりありませんか?



329:デフォルトの名無しさん
15/10/22 20:51:13.05 Rb62oFdH.net
>>316
二度と来んなよ死ね

330:デフォルトの名無しさん
15/10/23 02:59:14.71 jTLyTzRn.net
Visual C# 2010 Express使ってるんですが、
"obj\x86\Release\○○.exe" を "bin\Release\○○.exe" にコピーできませんでした。
1000 ミリ秒以内に ○ 回目の再試行を開始します。別のプロセスで使用されているため、プロセスはファイル 'bin\Release\○○.exe' にアクセスできません。
というエラーが出て10秒程度待たされた末にエラーで起動できず、ということがたまに起こります。
この再試行をさせないようにしたいんですが、探しても設定方法が分からず、そもそも設定できるのかも分かりません…。
(エラーの原因は分かっているので問題ないです)
何か知っている方いたら教えてください。

331:デフォルトの名無しさん
15/10/23 03:06:18.87 ib+lLw74.net
変な質問だな。
なぜ原因の方を潰そうと思わないんだろう。

332:デフォルトの名無しさん
15/10/23 04:14:01.91 jTLyTzRn.net
>>320
すいません。原因はソースじゃないんです…。「デバック無しで開始」→で起動したものを閉じずにまた「デバック無しで開始」するとなります。
以前は再試行せずにすぐエラーが出たのでその状態に戻したいんです。

333:デフォルトの名無しさん
15/10/23 10:18:06.90 OmHxpJmN.net
>>321
プロセスが起動してんだからコピーできるわけねえじゃん
起動したものを閉じろよ

334:デフォルトの名無しさん
15/10/23 13:03:06.16 7JhC24+l.net
>>321
別プロセスで起動するように設定したらいいよ

335:デフォルトの名無しさん
15/10/23 16:56:02.41 msJBe+Ht.net
名前付きコンストラクタとか、コンストラクタの分割(見やすくする&読み取り専用変数を使うため)とか出来たらいいのにな…

336:デフォルトの名無しさん
15/10/23 19:18:21.29 wuEBiUeZ.net
>>319
デバッグで中断した時に他のスレッドが終了していないと起こるようだ
VS再起動で何とかなる

337:デフォルトの名無しさん
15/10/23 20:16:38.76 IJyMkb2B.net
PCに複数のIPアドレス(10個くらい)を持たせて、それぞれのIP宛にくるTCP通信を処理するサーバープログラム作ろうと思ってますが、
あらかじめネットワーク設定のIP設定画面からIPアドレスを追加しておくのではなく、
プログラムだけでIP追加&待ち受けするにはどうすればよいでしょうか?

338:デフォルトの名無しさん
15/10/23 20:55:00.47 1FmkefyV.net
netshで設定したら~?
C#は全く関係ないけど

339:デフォルトの名無しさん
15/10/23 21:01:51.88 8ibK1VGy.net
>>326
LANのデバイス10個いるけどどうすんの?

340:デフォルトの名無しさん
15/10/23 21:16:41.70 1FmkefyV.net
え、NIC一つに複数のIP設定できるでしょ
なんで10枚もいるのよ

341:デフォルトの名無しさん
15/10/24 00:31:26.01 sBU6HpCF.net
c++dll用ラッパーを自動で作るソフトとかない?

342:デフォルトの名無しさん
15/10/24 03:32:42.96 7oDBCbbL.net
>>326
P/InvokeでIPHLPAPI(IP Helper API)かな。

343:デフォルトの名無しさん
15/10/24 11:48:09.25 /s9N4mON.net
>>330
常識で考えろ
そんなものは作れない

344:デフォルトの名無しさん
15/10/24 15:35:39.62 ucvxMtnw.net
>>319なんですが、質問したかったのは「再試行」をせずにすぐエラーを出すように出来ないかってことなんです。
再試行している間はメッセージも出ず、ひたすら待たされるので、「起動に時間掛かってるのかな?」と思ったら、前のプロセスの終了し忘れだったということがあって…。
変な質問で混乱させてすいません。答えてくれてありがとうございました。

345:デフォルトの名無しさん
15/10/24 17:13:10.08 dOGyJCjw.net
>>333
そりゃだって、前のプロセス終了待ちするんだから仕方がない。同時起動しない設定にすればいい

346:デフォルトの名無しさん
15/10/24 19:00:51.29 t+kkgTrx.net
回答する奴がどいつもこいつも話聞かない奴で質問者が可哀想になるわw

347:デフォルトの名無しさん
15/10/24 22:09:38.29 oCqnp8jj.net
数字のリスト 1,2,3,4などを
1 2 3 4のようにスペースで区切って表示したいです。
しかし、以下のようにやると語尾にごみが入ってしまいますよね?
皆さんはどうやってますか?
var s = "";
foreach(var item in list){
s += item + " ";
}
あと、このようなコードを打ったら0が得られました。
var e = list.GetEnumerator();
WriteLine(e.Current);
リストの一番目は0じゃないはずですが、どういう状態なんでしょうか?

348:デフォルトの名無しさん
15/10/24 22:12:13.35 oCqnp8jj.net
MoveNextで最初のインデックスに移っていないので例外が発生すると予想していたんですが

349:デフォルトの名無しさん
15/10/24 22:22:56.92 bQKppvzE.net
>>336
String.Join

350:デフォルトの名無しさん
15/10/24 22:33:06.87 fd/dB9hc.net
>>337
MSDN読め
URLリンク(msdn.microsoft.com)
後、ソースも
URLリンク(referencesource.microsoft.com)
Currentの初期値はdefault(T)になってる

351:デフォルトの名無しさん
15/10/24 23:13:30.57 oCqnp8jj.net
>>338
ありがとうございます。.netはなんでもありますね
>>339
default(T)になっているのはなぜですか?
currentが呼び出されてそこからindexの値を取りに行くのは駄目なんでしょうか?
ソースは時間があるときに読みます。

352:デフォルトの名無しさん
15/10/24 23:22:00.56 fd/dB9hc.net
MSDN読めって書いてるのが見えないの?

353:デフォルトの名無しさん
15/10/24 23:37:22.93 oCqnp8jj.net
>>400
よくわかりません。
MoveNextをするまではプロパティは未定義ですとなっていますが、
実際に値を返していますよね。
そもそも定義・未定義という記述の意味が分かりません。
で、default(T)になっているのはパフォーマンスのためらしいですが、
今内部ソースを読む時間がないし、面倒くさいのでdefault(T)でどうパフォーマンスに影響があるのか伺っている次第です。

354:デフォルトの名無しさん
15/10/24 23:45:14.81 wB/X7nCW.net
プログラミングもめんどくさがって死ねよチンカス

355:デフォルトの名無しさん
15/10/24 23:48:11.15 udZsPmmZ.net
何を返すか保証しないって意味でしょ
難しく考え過ぎじゃないか?

356:デフォルトの名無しさん
15/10/24 23:58:43.72 fd/dB9hc.net
Curretに境界値チェックして例外投げる実装入れるとパフォーマンスがわずかだけど落ちるだろ
それだけ
この実装が嫌ならオレオレEnumerator作ればいい

357:デフォルトの名無しさん
15/10/25 01:57:46.12 fsyBfEYm.net
未定義というのは将来実装が変わって返す値が変わっても文句言うなよって意味

358:デフォルトの名無しさん
15/10/25 02:17:51.08 KpFhvh+K.net
ありがとうございます。
あまり気にしないことにします。

359:デフォルトの名無しさん
15/10/25 02:38:41.48 c+xpZEB0.net
ふぅ、ここの回答者頭おかしいし、あちらこちらで暴れているマイクロソフトの工作員も頭おかしいし
どこもかしこもマイクロソフト関連は気持ち悪くなった

360:デフォルトの名無しさん
15/10/25 06:55:51.12 UpnA5iMK.net
やべえぞそれ
黄色い自動車に乗ったほうがいい

361:デフォルトの名無しさん
15/10/25 13:05:53.83 XGM/2Enx.net
>>348
じゃあ見るなよ

362:デフォルトの名無しさん
15/10/25 13:35:20.53 xV04ZCve.net
飛び火させて申し訳ないけどApplepファンボーイほどではない

363:デフォルトの名無しさん
15/10/25 16:37:16.14 hQyThWO7.net
SQL Server のLocalDbを使っていたPCが壊れて
dbだけは


364:バックアップしてあったので それを新調したPCで読むことはできますか? dbを作ったPCじゃないと読めないんでしょうか?



365:デフォルトの名無しさん
15/10/25 16:50:28.68 Q9+fT7GM.net
どういうバックアップ?
そもそもバックアップてtそういう時のためにあるようなもんだろ

366:デフォルトの名無しさん
15/10/25 16:55:40.90 c+xpZEB0.net
>>350
お前みたいなのが居なくなるだけですげぇスレの空気が良くなるよ

367:デフォルトの名無しさん
15/10/25 16:58:41.53 PVPHq6NE.net
Unityのコルーチン(グリーンスレッド)ってアトミックな処理によるスイッチングは発生しますか?

368:デフォルトの名無しさん
15/10/25 17:52:19.14 xV04ZCve.net
コルーチンはスレッドと何の関係もないですよ
何か変な文献でも読んだんですか?

369:デフォルトの名無しさん
15/10/25 18:02:49.45 MN19GUGi.net
>>348 みたいなレスしてる奴が何言ってるんだか w

370:デフォルトの名無しさん
15/10/25 21:16:15.50 0CUh0fF8.net
たぶん他の奴に言われてくやしかったから自分も使ってみたかった言葉なんだろ
使いどころ間違えて自爆してるけど

371:デフォルトの名無しさん
15/10/25 23:23:12.66 hQyThWO7.net
>>353
エクスプローラでコピーした場合です

372:デフォルトの名無しさん
15/10/25 23:41:15.34 RC9wdhkQ.net
個人レベルの制作だとオブジェクト指向のメリットって
カプセル<多様性だな
カプセル化意識し過ぎると処理速度(特にゲーム)とかが酷くなる

373:デフォルトの名無しさん
15/10/26 00:36:32.71 qJuY+u/q.net
多態性?

374:デフォルトの名無しさん
15/10/26 00:42:27.84 0a7DJh5E.net
あれ、多態性だったのか
多様性と思ってた

375:デフォルトの名無しさん
15/10/26 00:47:33.11 pea7EB//.net
そんなレベルでカプセル化すると遅くなるとか言われてもな
多分まともに動くものを作り上げたことがないんだろう

376:デフォルトの名無しさん
15/10/26 01:13:26.64 jSFkYHTf.net
問題の分析もできないだろうし
ベンチすら見ないで物言ってそうな空気

377:デフォルトの名無しさん
15/10/26 03:25:47.91 vCh8HvqX.net
ゲームとか複雑にオブジェクトが絡むものはオブジェクトに仕事させないで、関数ベースの方がスムーズにいくな。
エンジンにもよるが副作用がいつ起きるか把握できん。

378:デフォルトの名無しさん
15/10/26 07:47:01.63 7G3hAEBt.net
関数ベースで大量のフィールドとフラグでいつ副作用が起こるか分からないようなものを作っているわけですね

379:デフォルトの名無しさん
15/10/26 08:17:31.68 C98YS4z/.net
int x = 1;やx = a+b;みたいな普通の代入式も破壊的代入と呼びますか?

380:デフォルトの名無しさん
15/10/26 16:05:25.14 ewlzRHbI.net
非同期のタスクを途中で止めたいのですが
この場合tokenはInterruptMethod内でどのように記述すればよいですか?
~~~
if(_tokenSource == null) _tokenSource = new CancellationTokenSource();
   var token = _tokenSource.Token;
   await Task.Run(()=>InterruptMethod(), token).ContinueWith(t => {
      _tokenSource.Dispose();
      _tokenSource = null;
   });
~~(略)~~
private void InterruptMethod()
{
}

381:デフォルトの名無しさん
15/10/26 16:18:23.55 0a7DJh5E.net
>>363
配列をcloneして渡したりしてたら時間かからない?メモリ的にも不利だし

382:デフォルトの名無しさん
15/10/26 16:24:50.69 SRHIhdAJ.net
>>368
Task.Run(()=>InterruptMethod(token), token).以外略;
private void InterruptMethod(CancellationToken token) {
}
やはり多態と多様を間違って覚えていた人の発言は一味違う
木を見てなんとやら

383:デフォルトの名無しさん
15/10/26 17:01:46.79 pea7EB//.net
>>369
ReadOnlyCollectionでも使え

384:デフォルトの名無しさん
15/10/26 17:08:48.73 AGAQ9bh1.net
>>359
インポートできないかな、ってC#関係ないな

385:デフォルトの名無しさん
15/10/26 17:23:46.84 0a7DJh5E.net
>>371
凄い
こんなのあったのか

386:デフォルトの名無しさん
15/10/26 19:09:46.32 F0ZP2A+2.net
2.0の時代から普通にあるよねw

387:デフォルトの名無しさん
15/10/26 19:42:21.44 7G3hAEBt.net
コレクションを外部に公開したいときによく使う

388:デフォルトの名無しさん
15/10/26 19:42:28.57 SRHIhdAJ.net
2006年頃の世界から書き込んでるんじゃないの

389:デフォルトの名無しさん
15/10/27 00:16:23.97 8C7djFoA.net
え?

390:デフォルトの名無しさん
15/10/27 06:35:15.42 vxRkO0y7.net
/// <summary>
/// ビットマップ(Bitmap)を回転する
/// </summary>
/// <param name="bmp">ビットマップ</param>
/// <param name="angle">回転角度</param>
/// <param name="x">中心点X</param>
/// <param name="y">中心点Y</param>
/// <returns></returns>
public Bitmap RotateBitmap(Bitmap bmp, float angle, int x, int y)
{
Bitmap bmp2 = new Bitmap((int)bmp.Width, (int)bmp.Height);
Graphics g = Graphics.FromImage(bmp2);
g.Clear(Color.Black);
g.TranslateTransform(-x, -y);
g.RotateTransform(angle, System.Drawing.Drawing2D.MatrixOrder.Append);
g.TranslateTransform(x, y, System.Drawing.Drawing2D.MatrixOrder.Append);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBilinear;
g.DrawImageUnscaled(bmp, 0, 0);
g.Dispose();
return bmp2;
}
このコード少し中心がずれてさらになぜか1.2倍ぐらい拡大されてるんですが、いったいどうなってるんですか?
致命的なバグでもあるんでしょうか

391:デフォルトの名無しさん
15/10/27 07:31:28.81 AF18ul7Z.net
DrawImageUnscaledは5cmの画像を5cmで表示するメソッドだ
おそらくお前が期待しているものとは違う
普通にDrawImage使えばいい
関係ないけどDisposeなんか書くなusing使え

392:デフォルトの名無しさん
15/10/27 13:03:01.43 nTHAaiUE.net
また命令口調バカか

393:デフォルトの名無しさん
15/10/27 13:29:17.45 LyVSHq6d.net
また命令口調指摘厨か

394:デフォルトの名無しさん
15/10/27 13:43:42.84 oZ3zd0d4.net
テンプレートから外れたレスをするのをやめてください
「命令口調君って馬鹿だな」
です
正しくレスしましょうね

395:デフォルトの名無しさん
15/10/27 14:19:38.50 gDs0OAHt.net
Windowsフォームアプリケーションを使うとき
コンストラクタとLoadイベントと
usingとDisposeって
皆さんはどちらを使っているんですか?

396:デフォルトの名無しさん
15/10/27 14:24:46.83 g1+/LNmd.net
unity使ってたらバカにされるらしいけど
ここの人たちは自分でunityから作るような人たちなの?

397:デフォルトの名無しさん
15/10/27 15:10:56.72 oZ3zd0d4.net
はぁ?なに?被害妄想?
質問する前に病院行って問診してもらえよ

398:デフォルトの名無しさん
15/10/27 15:16:17.66 LyVSHq6d.net
>>383
コンストラクタとLoad/OnLoadは用途が別でしょ
>>382
命令口調君って馬鹿だな、まで読んだ
じゃなかったっけか

399:デフォルトの名無しさん
15/10/27 15:42:59.19 sDzKh5al.net
ウィンドウが生成される前にやれることならコンストラクタ。
ウィンドウが生成された後じゃないとやれないならLoadイベントなりOnLoadをオーバーライドしたりで。
usingが使える場面は、原則using。
適材適所で使えばいい。

400:デフォルトの名無しさん
15/10/27 16:09:37.28 scBMsQMX.net
なるほど分かりました

401:デフォルトの名無しさん
15/10/27 16:11:53.68 scBMsQMX.net
あれ?ID変わった
>>388>>383です

402:デフォルトの名無しさん
15/10/27 17:27:59.94 vxRkO0y7.net
>>379
thx

403:デフォルトの名無しさん
15/10/28 04:40:41.67 wj9WG103.net
地震警報アプリを作りたいんですが
どうやって作ったらいいの?
(´・ω・`)

404:デフォルトの名無しさん
15/10/28 06:39:54.32 1FF+1WKV.net
Managerって名称をクラスに付けるな死ねって言われたんですが
やっぱり付けるとマズいですか?(WindowManagerとかViewManagerとか)
Manage(管理)って言われても具体的に何を、ど�


405:フような機能を管理してるのか分からないって言われました



406:デフォルトの名無しさん
15/10/28 07:21:56.07 8s7NCB3J.net
>>391
緊急地震速報は気象庁に問い合わせないとダメ
予報だからいい加減なソース使うと捕まるよ
>>392
その通り

407:デフォルトの名無しさん
15/10/28 08:37:02.75 UYNcQBr4.net
うん、プロジェクトマネージャーとか意味が分からんよな。
もっと具体的な名称にしてもらいたい

408:デフォルトの名無しさん
15/10/28 09:12:53.06 JFpDXlQ+.net
>>392
どのような機能を管理してるのかは知らんが
何とかManagerってクラス名なら、「何を」はわかるだろう
その命名がまずいかどうかはお前のとこの命名規則次第

409:デフォルトの名無しさん
15/10/28 09:22:50.56 Djn1jnu+.net
クラスの機能が名前を見ただけでわかるのは理想だけど、
思いつかなければ適当でも構わんと思うがな
設計書さえちゃんとしていればいい

410:デフォルトの名無しさん
15/10/28 18:54:27.94 8zJiOHJK.net
>>392
> Manage(管理)って言われても具体的に何を、どのような機能を管理してるのか分からないって言われました
で、それに対してちゃんと説明できるの?
説明できないなら、クラスの作り方がまずいか君がきちんと理解できてないってこと
説明できるならそれを端的に示す名前をつければいい
ただ、所詮数単語分しか使えないから >>396 の言う様にあまり凝ってもしょうがないので、コメントなり設計書を充実させた方がいい

411:デフォルトの名無しさん
15/10/28 19:04:19.10 UYNcQBr4.net
マネージャーが具体的になにやるかなんて説明する必要あるか?
タスク管理や、営業や、自ら作業を行うし、色々やる。
いわば、コンポーネント群にアクセスするためのAliasのようなもんで、自身はそれを受け持つ器にすぎないのだから、なんのインスタンスを持つかだけ書けばいいと思うが。
逆に言えば、マネージャー自身になるべくメソッドを持たせてはいけない。

412:デフォルトの名無しさん
15/10/28 19:22:16.11 se9H+oL4.net
マネージャー自身になるべくメソッドを持たせてはいけない。
マネージャー自身になるべくメソッドを持たせてはいけない。
マネージャー自身になるべくメソッドを持たせてはいけない。
初心者でよくわからんがなんか感動した。タイミングだろうが 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)


413:デフォルトの名無しさん
15/10/28 20:32:14.12 3O8Xwln/.net
>>399
マジで若年性アルツハイマーの疑いがあるから病院で診てもらえ。
普通の人間はお前さんがやってるような繰り言を好まない(むしろ嫌悪感を感じる)が、脳にダメージがあると
お前さんのように繰り言や同じことの繰り返しに快感を感じるようになる。

414:デフォルトの名無しさん
15/10/28 21:17:58.21 se9H+oL4.net
>>400
そうなのか
最近おかしいので脳梗塞かと思ってたけど・・・その考えはなかった
しかし精神病だと言われて言ってみら正常だからもうくんなとか言われて恥をかいたので鵜呑みにできない

415:デフォルトの名無しさん
15/10/28 21:36:02.28 3nTbM/Mv.net
他人のアルツハイマーの疑いを指摘するより先に
自分の人格障害を疑えよ

416:デフォルトの名無しさん
15/10/28 21:40:04.01 N4hu8nHh.net
│↑
└┘

417:デフォルトの名無しさん
15/10/28 23:07:28.64 3O8Xwln/.net
>>401
真面目にそうだよ。
反復行動や繰り言はボケの初期症状。
2chでも実況とかで毎日同じレスを繰り返してる奴がいるけど、ああいう奴の何割かは確実にヤバい。

418:デフォルトの名無しさん
15/10/28 23:20:01.88 zTRdryA5.net
上のケツ穴からなにを偉そうなこと抜かしてんだ
糞して寝ろゴミ

419:デフォルトの名無しさん
15/10/29 00:05:27.68 y57Q0DlA.net
俺も毎日会社行く反復行動してるわ
ボケないように無職にならないと

420:デフォルトの名無しさん
15/10/29 19:46:57.90 3XC8GuXY.net
10万件程度のレコードをQueueで流しながら中身を色々処理したいのですが、多次元配列で格納してLinqToSqlで処理するか、DB連携してテーブル作成してSQLで処理するのと、どちらが良いでしょうか?メンテナンス性よりもどちらかというと処理スピードを重視しています。

421:デフォルトの名無しさん
15/10/29 20:34:52.83 QT8b22UI.net
Sparkでも使えば

422:デフォルトの名無しさん
15/10/30 01:22:44.08 wTNAYNO/.net
両方やってみて速い方にすれば?

423:デフォルトの名無しさん
15/10/30 04:36:04.75 9YpT7G8L.net
実行中にコードを書き換えたいんだが、変更しようとすると
アセンブリが読み込まれていない場合変更が許可されていないと出るんだがどうすればいい?
同一ソリューション内にクラスライブラリプロジェクトを作ってメインプロジェクトに参照設定したのでクラスライブラリーのコードを書き換てビルドするだけで
呼び出し先コードを動的に変化させられると思ったんだが甘かった

424:デフォルトの名無しさん
15/10/30 04:42:47.45 opwym8fe.net
動的コード生成はいくつか方法はあるけど
今ならLINQの式ツリーを使うのがベストかと思う

425:デフォルトの名無しさん
15/10/30 05:22:30.47 9YpT7G8L.net
式ツリーとか意味わからなすぎる
もっと簡単でいいんだけど
VS二つ立ち上げてdllの中実行するたびにdll自体を再読み込みする設定とかないの?
HDDぶっ壊れるから無理なのかな

426:デフォルトの名無しさん
15/10/30 05:47:54.39 opwym8fe.net
ライブラリは読み込んだら最後、アプリケーションドメイン単位でしかアンロードできないのでちょっとメンドクサイ事になるかもね
どういう事をしたいのか分かれば、どの方向性がいいか答えられるかもしれないけど、掲示板越しではちょっと難しいかもしれない

427:デフォルトの名無しさん
15/10/30 06:28:44.46 9YpT7G8L.net
アプリの起動と終了の時間が長すぎるのでゲームスクリプトとかいうのにたどり着いたんだが
簡単な式の変更だけでいいんだけど
HP -= attackポイント-defenseポイント

HP -= attackポイント-defenseポイント*スキル1
とかに細かく変更してバランスを取りたい
とりあえずCSharpCodeProviderとかいうのは全く意味がわからなかった
Assembly.LoadFrom(DLLのフルパス);をボタンに設定したが、DLL側のVSでアクセス拒否でコンパイルできない。
動的式変更ってみんなどうやってんだよ

428:デフォルトの名無しさん
15/10/30 06:32:27.31 opwym8fe.net
粒度が細かい変更なのでアプリケーションドメイン越しだと、問題が起こりそうですね
難解かもしれませんが、無理してでも式ツリーがベストだと思います

429:デフォルトの名無しさん
15/10/30 06:35:41.31 opwym8fe.net
ところで、ゲームという事は調整をする段階だけ使用して、製品版では固定となるという事はありますか?
それで良いなら、やり方はあるかもしれない

430:デフォルトの名無しさん
15/10/30 06:36:30.12 9YpT7G8L.net
>>415
了解
LINQの勉強から始めますw
ありがとね

431:デフォルトの名無しさん
15/10/30 06:48:24.54 9YpT7G8L.net
そこまで考えてなかった
速度が遅くなるならスクリプトってのは本体に戻すものなのかな
わからん

432:デフォルトの名無しさん
15/10/30 06:57:18.47 opwym8fe.net
遅くていいならdllなど使わず、いっそアプリケーション間通信とか使ってみれば良いのでは?
WFCとか

433:デフォルトの名無しさん
15/10/30 07:26:27.95 mUvrP2A4.net
そんなもん適当に沢山の式のパターン用意してからswitch(ファイルの値)で分岐したらいいだろ
もしくは 結果 = 係数1 * ポイント * ポイント + 係数2 * ポイント
みたいな行列の計算式として一般化して係数行列だけファイルから読むとかな (スキルの値もポイント行列に含める)
沢山変える場所があるから自由にソース弄りたいというなら小細工するよりいっそLuaでも組み込んだほうがいい

434:デフォルトの名無しさん
15/10/30 07:44:32.17 opwym8fe.net
>そんなもん適当に沢山の式のパターン用意してからswitch(ファイルの値)で分岐したらいいだろ
二度と見たくないコードになりそうw

435:デフォルトの名無しさん
15/10/30 08:10:06.51 mUvrP2A4.net
決まったら消すんだからどうでもいいでしょ
式ツリーって自分で言ってること分かってるんだろうか
自分でDSL作ってパースしてそれに従って式組み立てるんだぞ?
んなクソ面倒な再発明するくらいならスクリプト組み込むわ

436:デフォルトの名無しさん
15/10/30 08:16:59.27 opwym8fe.net
>>422
XMLで式書いて、式ツリーに変換してしまえば、数行の再帰ルーチン一個でできますが?

437:デフォルトの名無しさん
15/10/30 08:23:13.87 opwym8fe.net
式ツリーを提案したのは、dllでリンクの必要がある→かなりパフォーマンスにシビアな要求があると理解したからですので
速度いらないなら、式ツリーは無視でいいですよ

438:デフォルトの名無しさん
15/10/30 08:32:26.67 mUvrP2A4.net
>>423
それをDSLという
パラメータの値はどこから取ってくるの?それもXMLにいちいち書くの?
現実的にはいろいろ柔軟性を捨てて決め打ちすることになるだろうから、非常に限定的なDSLになると思うよ
どうせ限定的な使い捨てコードなんだったらそんな大袈裟なことはしたくないね俺なら

439:デフォルトの名無しさん
15/10/30 08:35:17.46 opwym8fe.net
>>425
何が言いたいのかよくわからんけど、知識なさすぎじゃねぇのw
お前、ずっとここに居座っているキティ回答者なんだろうけど、死ねばいいと思います

440:デフォルトの名無しさん
15/10/30 10:35:59.08 v/tjtbaN.net
いまどきXMLはねーよ

441:デフォルトの名無しさん
15/10/30 11:08:18.70 opwym8fe.net
XML嫌なら正規表現あるし式程度なら完全パースしても2000行には収まるだろうし
まぁ、知識なければ無理でしょうけどね、バカはバカなりにして回答者にならずに引っ込んで下さいって感じです
ゴミ回答でレスどんどん流れていくのは迷惑です
スラドで暴れるMS工作員といい、昨今MS周辺にキチガイ多すぎだよ

442:デフォルトの名無しさん
15/10/30 11:28:28.02 5k9fNgvi.net
正規表現なんか使ってパースするぐらいならXMLで良いわw

443:デフォルトの名無しさん
15/10/30 11:34:54.86 opwym8fe.net
やたら式ツリーに拘ってる流れですが、パフォーマンスはいならいみたいだから
アプリケーション間通信お勧めです
とだけ最後に
これなら独立してコンパイルもできるし、部分再起動もデバッグも容易
式ツリーは、パフォーマンスはでるがデバッグがファッキンな事になるので

444:デフォルトの名無しさん
15/10/30 11:38:18.84 opwym8fe.net
通信というと大げさに思えるかもしれないけど、結構ライブラリはそろっているし
なにより、WEBに情報量が多いので
キーワードはWFC

445:デフォルトの名無しさん
15/10/30 11:40:32.84 opwym8fe.net
×WFC
○WCFでした

446:デフォルトの名無しさん
15/10/30 11:41:56.65 mUvrP2A4.net
パフォーマンスいらないんならそれこそスクリプト組み込めばいいだろ
.NETアプリに簡単に組み込めるのはいくらでもあるし、COMでJScript呼んでもいい
WFC()なんかより遥かに簡単だよ

447:デフォルトの名無しさん
15/10/30 11:44:51.01 opwym8fe.net
>>433
まぁ、式の話だけならそれでもいいとは思うけど、dllでかつパフォーマンス要らないというのだから
言語を共通化しておきたい理由があるのかなと思っただけです

448:デフォルトの名無しさん
15/10/30 11:47:11.41 opwym8fe.net
話を意図を全く考えないで、次々と回答する人の話聞かない回答者は迷惑
と、ずっと流れを見ていて思う所

449:デフォルトの名無しさん
15/10/30 13:00:36.70 GDTU3KP4.net
言ってることはまともだけど
平日の午前中だけで15回もレスしてる奴がまともとはとうてい思えない現実

450:デフォルトの名無しさん
15/10/30 14:05:02.67 PGAJ1OT+.net
>>348と同一人物だろ

451:デフォルトの名無しさん
15/10/30 14:20:18.47 zaAGkshB.net
msdnにいる変人だろ

452:デフォルトの名無しさん
15/10/30 15:58:51.03 5vqzX8bU.net
コード中にリテラルべた書きするのって辞めた方がいいですか?

453:デフォルトの名無しさん
15/10/30 16:00:13.93 opwym8fe.net
そう思うのなら止めとけ、そんなの人に聞くような話ではないでw

454:デフォルトの名無しさん
15/10/30 16:13:31.41 5vqzX8bU.net
素人だし現場経験ゼロで友人もいないので
ネット掲示板以外で聞ける場所がないんです

455:デフォルトの名無しさん
15/10/30 17:05:36.71 GDTU3KP4.net
図書館でプログラミング作法でも借りて来て読めよ

456:デフォルトの名無しさん
15/10/30 17:45:05.20 5vqzX8bU.net
すみません、分かりました。
最後に、作法の本でお勧めのタイトル教えて下さい

457:デフォルトの名無しさん
15/10/30 17:58:32.30 PGAJ1OT+.net
同じ文字列とか定数値を複数の箇所で使うのならconstやそれ相当にしたほうがいいのは分かるでしょ?
定数としてまとまってると変更するとき楽だし
書捨てコードならそんなことはしないけど

458:デフォルトの名無しさん
15/10/30 18:09:03.11 5vqzX8bU.net
それは分かります
ただ、一度しか使わない判定文とかはローカル変数切るの面倒くさいなと思って
適当なリテラル書いちゃう事もあるんですが、どうなのかなと思って

459:デフォルトの名無しさん
15/10/30 18:18:01.14 TILHDHb5.net
>>445
リテラルを避ける動機として変更の容易さはよく挙げられるけど実際はむしろ多いケースじゃない。
リテラルを避ける動機は、プロパティやメソッドにちゃんとした名前を付けるのと同じ。
それが何を意味しているのかのメタ情報を付け加えるため。
だからたとえ一回しか出てこない定数でも、それが何を意味しているのかをコード上で明示する必要が
あると思えば、それがちゃんとした名前を与える動機になる。

460:デフォルトの名無しさん
15/10/30 18:36:25.26 5vqzX8bU.net
>>446
なるほど、よく分かりました
ありがとうございました。

461:デフォルトの名無しさん
15/10/30 19:51:46.37 MYsCE15E.net
#define ZERO (0)

462:デフォルトの名無しさん
15/10/30 20:12:53.58 qxv1tbgN.net
その場限りでしか使わないような定数で、なおかつ変更する必要もないようなものは、直接指定する。

463:デフォルトの名無しさん
15/10/30 20:13:36.95 FKezdCzi.net
>>443
ソフトウェア作法
ついでにプログラム書法も読め

464:デフォルトの名無しさん
15/10/31 01:16:24.67 rX+RYEJQ.net
読みやすいコードを書く努力は、他人のみならず「未来の自分」という別人に向けた優しさだ

465:デフォルトの名無しさん
15/10/31 10:34:56.02 bc83RtfA.net
3日後の自分は他人

466:デフォルトの名無しさん
15/10/31 13:16:21.42 Yq2ZBfqO.net
リファクタリングって部屋掃除する程度の当然のことなのに、優しさどうとかレベル低すぎだろ。

467:デフォルトの名無しさん
15/10/31 13:46:46.22 CR8bSv/n.net
高レベラーはこんなところにいなくていいんですよ

468:デフォルトの名無しさん
15/10/31 19:22:29.59 qtS/NLO9.net
VS2010で.net4.0ClientProfileをターゲットプラットフォームとして作成したアプリケーションを、
VS2015で同様に開発を継続しても不具合とかないですよね?

469:デフォルトの名無しさん
15/10/31 21:27:12.40 aiNNK1Xk.net
>>455
C#のバージョンが違うから出ないとも限らない

470:デフォルトの名無しさん
15/10/31 22:30:49.30 nJia6E4E.net
VS2015はなんかIDE不安定なんで用心しといた方が良いかもしれない

471:デフォルトの名無しさん
15/10/31 23:44:21.04 XeEgNn+4.net
結構落ちるよな2015のIDE
Roslynのお陰か起動やたら遅いし

472:デフォルトの名無しさん
15/11/01 00:43:39.73 ak4S1goK.net
Windows8が出て、合わせて登場した2013あたりから
マイクロソフト製品はどれも品質がひどく悪くなっている
今は、学生はともかく業務の人は別途マシンを用意して試験期間を経てからにしたほうが無難

473:デフォルトの名無しさん
15/11/01 00:46:56.25 ak4S1goK.net
URLリンク(it.srad.jp)
こういうのマジで勘弁してほしいんだけどな

474:デフォルトの名無しさん
15/11/01 03:12:33.04 dH8H+Y8O.net
多次元配列にテーブルみたく、フィールド毎、違う型とか格納できますか?

475:デフォルトの名無しさん
15/11/01 03:21:18.28 ak4S1goK.net
何をしたいのかよくわかりませんが、フィールドにobject型かdynamic型を使えば目的は達成できるでしょう

476:デフォルトの名無しさん
15/11/01 08:56:11.81 xZAu8pjv.net
ツールストリップ内のコンボボックスのサイズをフォームのサイズ変更時に自動調節しようとしているのですが
サイズを拡大する時は正常ですが、縮小時に変化幅が小さいと正常に表示されるのですが
変化幅が大きいと表示されませんが何故でしょうか?
private void Form1_SizeChanged(object sender, EventArgs e)
{
  toolStripComboBox1.Width = (toolStrip1.Width - 300);
}
以下も同じ
private void toolStrip1_SizeChanged(object sender, EventArgs e)
private void toolStrip1_Resize(object sender, EventArgs e)
private void Form1_SizeChanged(object sender, EventArgs e)
private void Form1_ResizeEnd(object sender, EventArgs e)
private void Form1_Resize(object sender, EventArgs e)

477:デフォルトの名無しさん
15/11/01 11:39:20.34 I6OT07I5.net
アプリケーションの実行フォルダをApplication.StartupPath プロパティで取得する事は判ったのですが
dobonに載っていた下記のコードの何処に追加したらよいのか判りません
よろしくお願いします
//ファイルを上書きし、Shift JISで書き込む
System.IO.StreamWriter sw = new System.IO.StreamWriter(
@"C:\test\1.txt",
false,
System.Text.Encoding.GetEncoding("shift_jis"));
//TextBox1.Textの内容を1行ずつ書き込む
foreach (string line in TextBox1.Lines)
{
sw.Write(line + sw.NewLine);
}
//閉じる
sw.Close();

478:デフォルトの名無しさん
15/11/01 12:06:14.89 VEmEMCzM.net
>>464
1.txtを"C:\test\"じゃなくてアプリケーションの実行フォルダに出力したいってことなら
「@"C:\test\1.txt"」を「Path.Combine(Application.StartupPath,"1.txt")」に置き換えればいいんじゃね

479:デフォルトの名無しさん
15/11/01 12:06:43.65 iCjS0aFW.net
メソッド内。

480:デフォルトの名無しさん
15/11/01 14:05:43.27 EzyPWtsW.net
C#はクラス数約3000
付随のプロパティーやメソッドが
どのような便利機能があるのかを知るだけでも大変
更に
詳細を調べ
実装するに至るまでがまた大変
Microsoft 地獄

481:デフォルトの名無しさん
15/11/01 14:11:08.59 8yFkftFr.net
へー、すごいね
帰っていいよ

482:デフォルトの名無しさん
15/11/01 16:19:50.04 aracFvq3.net
非同期に来るネットワークストリーミングデータを
ファイル出力(またはDBに出力)したいんだけど
一番良い実装方法ってないでしょうか
自分の頭だと
1.ストリームデータが到来するたびにFile.Open(Mode.Append)で書き込んでFileCloseする
ぐらいしか思いつかないんです

483:デフォルトの名無しさん
15/11/01 16:46:54.21 8wBAqxRo.net
>>469
> 一番良い実装方法ってないでしょうか
お前の「一番良い」の定義によるわな

484:デフォルトの名無しさん
15/11/01 17:19:43.69 gG04aPZk.net
出力する関数だけ作っておいて、その先は差し替えられるようにしとけばいいんじゃないかな

485:デフォルトの名無しさん
15/11/01 17:25:41.75 qxPDGDEe.net
unityC#の話なんですが
・Aをした後Bをして、Bの後にCをしてCの後にDをする
・A~Dまではメソッド化してMethA~MethDがある
これを
void Main()
{
 MethA();
 MethB();
 MethC();
 MethD();
}
ではなく
MethA(){ (の終端で)MethB();}
MethB(){ (の終端で)MethC();}
MethC(){ (の終端で)MethD();}
とメソッド内で次々メソッドをコールしていくのってアンチパターンですか?

486:デフォルトの名無しさん
15/11/01 17:34:19.28 OsaYEXf6.net
メソッドの使い方として…
void Main()
{
ご飯を食べる();
歯を磨く();
着替える();
家をでる();
}
ではなく
ご飯を食べる(){ (の終端で)歯を磨く();}
歯を磨く(){ (の終端で)着替える();}
着替える(){ (の終端で)家をでる();}
}
とメソッド内で次々メソッドをコールしていくのってアンチパターンですか?

487:デフォルトの名無しさん
15/11/01 17:34:31.06 fyC3CDzJ.net
>>472
やめなさい。メソッドはgotoではない。
中で呼んでるメソッドの処理も含めてそのメソッドの処理だ。
コボラーはよくそういうコード書くよ。
PERFORM INPUT_CHECK.で全ての処理が終わるの。

488:デフォルトの名無しさん
15/11/01 17:35:49.13 OsaYEXf6.net
中級以上の人でもメソッドが何かわかってない人がけっこいる

489:デフォルトの名無しさん
15/11/01 17:36:57.57 qxPDGDEe.net
>>474
ありがとうございます。
それってメソッド内で別メソッドをコールする事自体ダメって事ですか?
それとも基本ダメだけどケースバイケースという意味ですか?

490:デフォルトの名無しさん
15/11/01 17:38:25.26 OsaYEXf6.net
歯を磨くがご飯を食べるというメソッドの中の行為だと思うか?

さらに言うとご飯を食べたら必ず家を出ることになるけどそれでいいのか?

491:デフォルトの名無しさん
15/11/01 17:38:34.51 qxPDGDEe.net
>>473
すみません・・・よく分かりません・・・

492:デフォルトの名無しさん
15/11/01 17:40:21.93 OsaYEXf6.net
ゆ、ゆとってるな…

493:デフォルトの名無しさん
15/11/01 17:42:33.30 VEmEMCzM.net
なんでコールしたいのかを説明した方がいいんじゃないの

494:デフォルトの名無しさん
15/11/01 17:42:55.19 OsaYEXf6.net
メソッドは単に手順の塊だけにするべきじゃない
意味的にまとまった単位にすべき

495:デフォルトの名無しさん
15/11/01 18:28:41.58 tijcq3hU.net
納期があるから無理。

496:デフォルトの名無しさん
15/11/01 18:43:27.56 NUcI8Hig.net
>それってメソッド内で別メソッドをコールする事自体ダメって事ですか?
NO
メソッド内で別メソッドをコールしても良い
>それとも基本ダメだけどケースバイケースという意味ですか?
NO
基本的にOKだがケースバイケースでだめな場合がある
>>472などはだめな場合の典型だ
このようなコードを書くと、テスト担当者や将来これをリファクタリングする者が、
ぶち切れて君を殴りに来るだろう

497:デフォルトの名無しさん
15/11/01 19:07:02.64 qxPDGDEe.net
理由とかそれ以外の事は分かりませんが、とにかくダメだという事だけは分かりました
ありがとうございます

498:デフォルトの名無しさん
15/11/01 19:16:41.45 SU1ih8K9.net
>>484
>>473とかの説明は分かりやすいと思うけどね。
茶化すだけではなくて、本当に学びたいのなら、
>>480の指摘通り、君のコードを晒してみるべきだよ。それは473のように日本語でもいい。
俺は多分 MethA,B,C,D の切り方に間違いがあるのだと思うが。

499:デフォルトの名無しさん
15/11/01 19:28:16.61 ps5s1FTp.net
別にそうスケジュール決まってて、必ずそのフローになるならいいじゃん。
仕様変更がないならね

500:デフォルトの名無しさん
15/11/01 22:15:26.87 nfigy2gy.net
すみません。質問なのですが、Visual StudioでWindowsフォームを作成したとき、
○○.vb
○○.Designer.vb
○○.resx
の3つが作成されますが、○○.resxはどういったときに使うのでしょうか?

501:デフォルトの名無しさん
15/11/01 22:29:30.44 yv99Jyne.net
>>484
ひとつのメソッドで完結してなきゃダメだよ。
その後の動作に一貫性があるなら内包すべき

502:デフォルトの名無しさん
15/11/01 22:36:12.65 qJZnh0GV.net
>>487
vbスレで聞けと言いたい所だが、テキストエディタで中身開いてみれば大体分かるよ

503:デフォルトの名無しさん
15/11/01 22:55:30.95 nfigy2gy.net
ごめんなさい。resxファイルの中身を見てもよくわかりません。
○resheaderってなに?
○xsdってなに?
○xsd要素内に長々と設定が書かれているけどこれはなに?
疑問が増えてしまったのですが…。

504:デフォルトの名無しさん
15/11/01 23:01:09.49 nfigy2gy.net
ごめんなさい。疑問が湯水のように湧き上がるので、続いて質問いたします。
C#では大文字で始まるStringと小文字で始まるstringがありますが、
この2つに何か違いなどはあるのでしょうか?

505:デフォルトの名無しさん
15/11/01 23:01:58.94 83j3eZbo.net
無い

506:デフォルトの名無しさん
15/11/01 23:02:53.98 nfigy2gy.net
>>492
ありがとうございます

507:デフォルトの名無しさん
15/11/01 23:07:00.98 nfigy2gy.net
まだ疑問があります。すみません…。
object型に存在しないメソッドを記述してもIDEがエラーを検出してくれないのですが、
これは正しい挙動なのでしょうか?
他の型ではIDEがきちんとエラーを検出してくれます。

508:デフォルトの名無しさん
15/11/01 23:11:08.80 83j3eZbo.net
拡張メソッドがある時はエラーにならない
それ以外はエラーになるはず

509:デフォルトの名無しさん
15/11/01 23:14:10.19 nfigy2gy.net
今Visual Studio Communityをダウンロード中なので、
拡張メソッドがない時にきちんとエラーが出るかどうかを試してみます。
回答ありがとうございます。

510:デフォルトの名無しさん
15/11/01 23:19:27.21 qJZnh0GV.net
>>490
タグは別に理解しなくていい、した方がいいかもだけど
ファームにコントロール追加してプロパティを設定してからresxの中身見てみろ
>>494
vbの話じゃないだろうな…

511:デフォルトの名無しさん
15/11/01 23:19:40.79 nfigy2gy.net
今僕は、exeファイルやdllファイルがILで記述されているという認識を持っているのですが、
これであっているでしょうか?
できればexeやdllのILを読んでみたいのですが、おすすめのツールなどはありますでしょうか?
もう本当に、何度も質問してすみません…現実に質問できる人がいなくて…

512:デフォルトの名無しさん
15/11/01 23:21:32.65 qJZnh0GV.net
まずgoogleで検索しような

513:デフォルトの名無しさん
15/11/01 23:24:36.60 MnKC4BnX.net
>>498
.NET Frameworkに同梱のildasm.exeで読める
本格的に解析するならオープンソースのILSpyが便利

514:デフォルトの名無しさん
15/11/01 23:24:42.06 nfigy2gy.net
Googleで検索して答えを得ても、あまり楽しくないんですよね。
できれば同じプログラマの方から直接答えをいただきたいというか…
この気持ちわかりませんか?

515:デフォルトの名無しさん
15/11/01 23:28:37.70 ak4S1goK.net
分からないし、そういう質問はハタ迷惑だね

516:デフォルトの名無しさん
15/11/01 23:42:15.83 2F0TVXaS.net
調べるのが楽しくないようなら、プログラマは向いてないかも

517:デフォルトの名無しさん
15/11/01 23:46:40.91 SU1ih8K9.net
>>501
お前、向いてないと思うぞ。
プログラミングは探求心と好奇心があって自己完結できる奴じゃないと上達しにくい。
ググレばすぐに出てくることを質問されても、迷惑でしかない。
構ってちゃんは死ねの世界だよ。

518:デフォルトの名無しさん
15/11/01 23:49:41.32 OsaYEXf6.net
>同じプログラマの方
なにか君は違う分野の人だと思うよ

519:デフォルトの名無しさん
15/11/02 00:10:01.74 lz5NDAKO.net
自分で調べて、とりあえず試す、そして理解することができないやつにプログラミングは無理。

520:デフォルトの名無しさん
15/11/02 00:52:00.08 LDPQCdy0.net
全否定にワロタ

521:デフォルトの名無しさん
15/11/02 01:41:06.91 w3sTMEno.net
ここじゃなくてteratailとかで聞けよ
プログラマーの皆さん助けて…とか広告出してるから
如何にクソな質問でも答えるんだろ?たぶん
stackoverflowは止めとけ
お前なんか顔面にグーパンぶち込まれて終わりだから
人間的なリアクションすら期待できないぞ

522:デフォルトの名無しさん
15/11/02 01:55:56.07 ZkM1wHMy.net
自分で調べて解決できないことだけを質問して。
そういう質問には答えが返ってこないことが多いけどな。

523:デフォルトの名無しさん
15/11/02 02:06:35.75 lz5NDAKO.net
良い方法があるぞ。
ニコ生でプログラミング放送すればいい。
「初心者です。C#勉強してます。アドバイスください」みたいにしてさ
暇な教えたがりが丁寧に教えてくれるよww

524:デフォルトの名無しさん
15/11/02 02:27:46.08 2uUBRP/w.net
良い方法があるぞ、だとさ。
誰に威張ってるつもりなのかね。馬鹿じゃなかろうか。

525:デフォルトの名無しさん
15/11/02 02:33:52.94 mV+KRjUE.net
フォームにGDIで描画したあとなにに、その上に貼ってあるコントロールinvarid()とtranslateで透過しない仕組みを俺に教えてみろ

526:デフォルトの名無しさん
15/11/02 02:47:30.12 mV+KRjUE.net
>>509
なるほど

527:デフォルトの名無しさん
15/11/02 03:21:28.27 8j1BqD6a.net
>>512
国語の勉強から始めようか

528:デフォルトの名無しさん
15/11/02 06:18:48.27 K38GcwBv.net
>>463
自己解決しました
if (toolStrip1.OverflowButton.Visible)
{
toolStrip1.Width = toolStrip1.Width - toolStrip1.OverflowButton.Width - toolStrip1.OverflowButton.Margin.Horizontal;
}
でうまく行きました。

529:デフォルトの名無しさん
15/11/02 07:45:31.68 jIDLqNeP.net
googleで調べないからウゼーじゃなくて
かまってちゃんウゼェーなんだけどな
キチガイ回答者死ねと同じ理由で、どっか行きやがれって事だ
同一人物の自演くせぇけどw

530:デフォルトの名無しさん
15/11/02 11:09:13.20 /Om+5HJh.net
>>516
なんか、精神レベル14歳だな。
別にそれでも知ったことじゃないけど、わざわざこんなところで開陳して嬉しいのか?

531:デフォルトの名無しさん
15/11/02 11:58:16.38 jIDLqNeP.net
話の流れ無視して自分のしゃべりたい事ばかり回答する
強引に話題を正しい方向にもっていったら、頭おかしい初心者が現れる
この掲示板は以下それがずっとループしている、同一人物以外には見えない
本物の初心者が来たとき間違って叩いて掲示板が荒れると具合が悪いからとっとと死んでくださいって感じだね

532:デフォルトの名無しさん
15/11/02 14:57:34.97 lyk3EOWa.net
久しぶりにmsdnでクラスのドキュメント見てると
えらい見づらくなってる ていうか、バグってる
なんで、IEで表示して、重なって表示してまともに操作できないのか理解できない
一番 右に表示されるべき 「解決策はありますか」等が左に重なって表示されてて
まともに、クリックにも反応しないし
 

533:デフォルトの名無しさん
15/11/02 15:00:31.80 9+4jFg/5.net
プログラマがIEなんか使うな
IEはテストのときだけ使うもんだ

534:デフォルトの名無しさん
15/11/02 15:15:44.14 lyk3EOWa.net
いや、余計なソフトインストールしたくないし
しかし、最近IE使って、スクリプトエラーでHP見れなかったりいいことないわ
(Webサイトのせいにしてるけど、他のブラウザなら見れるだろうしw)
MSの本気が見たい

535:デフォルトの名無しさん
15/11/02 16:23:32.54 ysex+PeP.net
IE11で普通に見れるが
IE8使ってるならご愁傷様

536:デフォルトの名無しさん
15/11/02 17:05:07.62 lyk3EOWa.net
IE11なんだけど
互換性表示にしてみたけど、変わらず
なんかの設定があるのかな?
ともあれいろいろ試してみます

537:デフォルトの名無しさん
15/11/02 17:40:45.22 lyk3EOWa.net
原因判明
拡張保護モードに


538:よるものだった msdnの表示も、HPが見れない件も(Web サイトに問題が発生したため…) 拡張保護モードはそのままで、信頼済みサイトの登録したら両方とも治った >>522さんのおかげだね あと、スレチ悪かった



539:デフォルトの名無しさん
15/11/02 20:30:30.83 6BSNMQg5.net
昔のHelpViewerみたいなのはもうないのかね
ローカルにヘルプインストールするやつさ

540:デフォルトの名無しさん
15/11/02 21:09:41.05 lyk3EOWa.net
ホントそう 10Gぐらいあったけど
今のmsdnに比べれば天国

541:デフォルトの名無しさん
15/11/02 21:20:07.89 KsZtwWae.net
>>525
ヘルプ→ヘルプ設定の変更→ヘルプビューアーで起動
メニューぐらいしっかり見よう

542:デフォルトの名無しさん
15/11/02 21:20:21.31 i/oY4D53.net
URLリンク(msdn.microsoft.com)
オフラインのヘルプ コンテンツをインストールする
Visual Studio をインストールした後、オフラインで使用できるように、
追加のヘルプ コンテンツをダウンロードすることができます。
目が節穴なのか、
目のドライバをインストールするのを忘れているのか、
頭のサポートが切れているのか

543:デフォルトの名無しさん
15/11/02 21:23:00.50 6BSNMQg5.net
>>527
>>528
おー
機能2015インスコしたばっかだったので



544:助かりましたわー



545:デフォルトの名無しさん
15/11/02 21:23:06.26 5XQF34dG.net
「インターネットで正しい答えを得る最良の方法」を実行したにすぎない。
現に成功している。

546:デフォルトの名無しさん
15/11/02 21:33:44.76 6BSNMQg5.net
いけずおっしゃらんと。
だけどダウンロード速度おっそ! 

547:デフォルトの名無しさん
15/11/02 22:42:45.43 oXEakMpl.net
>>497
おっしゃるように、C#ではなくVBでした。勘違いしてしまって誠に申し訳ありません。
.resxのほうは、「リソースの追加」をすることで.resxファイルが書き換えられることはわかりました。
でもいくらフォームにコントロールに追加してそのプロパティを変えても、
.resxの内容は書き換わりません…。どういうことなのでしょうか?

548:デフォルトの名無しさん
15/11/02 22:47:53.10 oXEakMpl.net
>>500
丁寧に教えていただきありがとうございます。
まさか既にデコンパイラプログラムがパソコン内に入っているとは思いませんでした。
これからはildasm.exeでILを読むことにします。

549:デフォルトの名無しさん
15/11/03 09:42:13.71 Lrk43gML.net
>>532
そういうのは*.designer.csのInitializeComponentの中に書かれる

550:デフォルトの名無しさん
15/11/03 11:55:19.90 zP0KaUIs.net
IL読んでも全く理解できなそう

551:デフォルトの名無しさん
15/11/03 12:03:03.87 VtUJC+iX.net
初心者って知らなくても良い(その時点で到底理解できないこと)までやろうとするよなw
.resxは、リソース(画像とか音声・テキストデータ)関係のファイルでVSが自動生成しているんだが、別に中身がどうとか気にする必要はない。
そういうのを真剣に気にして終いには、ILを読むとかわけのわからないことに手を出そうとする。

552:デフォルトの名無しさん
15/11/03 12:34:16.13 56qTwYt/.net
doubleをdblと省略する表記方法はありますか?

553:デフォルトの名無しさん
15/11/03 12:35:33.64 iiu9ggf5.net
100MB程度のテキストファイル整形して読みたいのですがWebBrowserではちょっと重過ぎます
分割で読み込めればいいのですがいい方法ありませんか?

554:デフォルトの名無しさん
15/11/03 14:08:45.19 zP0KaUIs.net
exeファイルがILだからILを読むとかプログラミング言語の存在理由を理解してなさそう
コンピュータは全部機械語での動作だから機械語の勉強した方がいいと思うよ

555:デフォルトの名無しさん
15/11/03 14:33:19.93 HNCOBt+u.net
皆様に不快な思いをさせて申し訳ありません。
リソースファイルについてですが、Lockedプロパティの値を変えたときにリソースファイルが書き換えられました。
どうやら、コントロールが持てない情報はリソースファイルが利用されるみたいです。
>>497さんの言っていることが分かりました。
お答えいただいた方々には本当に感謝しています。ありがとうございます。
また一つ疑問が生まれたので質問いたします。
var table = new DataTable();
...
table.Rows.Where(...
このように記述したとき、RowsにはWhereメソッドがないとIDEに怒られます。
DataRowCollectionクラスはIEnumerableインターフェースを実装しているのに、なぜWhereメソッドが使えないのでしょうか?

556:デフォルトの名無しさん
15/11/03 14:41:50.95 VtUJC+iX.net
Whereが必要としているのは、IEnumerableではなく、IEnumerable<T>だから

557:デフォルトの名無しさん
15/11/03 17:08:20.36 wuOw+s8i.net
日本語解説サイト少ないね。最新の情報知るには海外サイト見ていくしかないのか

558:デフォルトの名無しさん
15/11/03 17:17:21.05 VtUJC+iX.net
日本語の解説サイトなんて、2008年ぐらいのまま止まってるのばかりだろ。

559:デフォルトの名無しさん
15/11/03 17:19:13.97 nnAxfjVL.net
C#とmysqlでアプリ作っていてるけどサーバーが外部でセキュリティ的に心配なので
すくなくてもSSLで接続したいのだが、mysqlサーバ側のsslを有効にする方法が見つかるのだけど
visualstudio側でデータソースに設定したいときにどうしたよいかの手段が見つからない
C# mysql ssl あたりでぐぐってもこれといって方法が見つから


560:ないのだけど、 なにかヒントになるものがあればアドバイスください



561:デフォルトの名無しさん
15/11/03 17:58:17.90 UfQouXyC.net
>>537
using dbl = System.Double;
でもこんなことすんなアホって絶対言われる
自分も絶対後悔する

562:デフォルトの名無しさん
15/11/03 17:59:19.49 6ritcPOX.net
今はどうやってつないでんの?
MySQL Connector/Net の場合ならここでなんとかならんかね
URLリンク(dev.mysql.com)

563:デフォルトの名無しさん
15/11/03 18:06:03.76 6ritcPOX.net
sshのが楽とは思うし、サーバ側で完結させてデータだけSSLでRESTfullとかでやるのもいいかと

564:デフォルトの名無しさん
15/11/03 18:29:46.19 VtUJC+iX.net
>>545
>>537
意味不明に略したら自分も他人もわからなくなるから、略してはいけない。
誰もが知ってるような単語は、略式を使う。

565:デフォルトの名無しさん
15/11/03 18:44:00.86 /yUCkyPR.net
間違いさえなければ別にforだろうがforeachだろうが好きなの使え派だったけど、他人のfor文終了条件ミスで半日潰したりすると流石に撲滅したくなるね
つーか皆いい加減LINQ使おうよ・・・

566:デフォルトの名無しさん
15/11/03 19:27:35.29 LOZNcNC7.net
>>549
自分はLINK禁止にされたから辛かった。

567:デフォルトの名無しさん
15/11/03 19:28:02.46 LOZNcNC7.net
間違ったLINQだな。

568:デフォルトの名無しさん
15/11/03 19:39:28.03 VtUJC+iX.net
LINQってそんなに難しいか?
むしろ、forとかwhile使うよりわかりやすいと思うんだが…

569:デフォルトの名無しさん
15/11/03 19:40:37.51 RYOZjHqX.net
LINQってforやwhileの代わりに使うものだったか?

570:デフォルトの名無しさん
15/11/03 19:47:07.94 CJf+XPA2.net
C#のlambdaは関数型から来た人が使うものであって
命令型の延長から来た人には理解できん類のもの
実際C#のlambdaシンタックスは初見からするとノイズが多すぎて、理解できないだろう
オブジェクト指向なのになんでここまで関数がでしゃばるのか
述語デリゲートが、なぜ普通のbooleanでダメなの?
っていらん疑問ばかりついてまわる

571:デフォルトの名無しさん
15/11/03 19:51:39.65 UfQouXyC.net
ラムダ式とLINQは関係ない

572:デフォルトの名無しさん
15/11/03 19:57:46.67 Lrk43gML.net
LINQアレルギーな奴ってろくに使ってないだけだから
そこにラムダ絡めちゃってさらに異質なもの認定してるだけ

573:デフォルトの名無しさん
15/11/03 20:05:19.20 56qTwYt/.net
>>545
ありがとうございました。

574:デフォルトの名無しさん
15/11/03 20:07:11.40 sXl2Uj86.net
すいません質問なんですけど
ほかのアプリのクライアント領域を取得したいんですが
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect);
こっちを使うとそれっぽい値がはいってるんですが
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern bool GetClientRect(IntPtr hWnd, out RECT lpRect);
こっちを使うと 座標(0,0) しか入ってないんですよね…
原因に心当たりのある人いらっしゃいませんか?
よろしくお願いします

575:デフォルトの名無しさん
15/11/03 20:18:09.71 QAKXUKz2.net
C#の拡張の歴史をみると >>554 の人が誤解していると思われる
実はLINQとラムダ式は大いに関係がある、式ツリーの実装のために作られたようなものだし
それがなければ、無名デリゲートで十分だった
むしろラムダ型という用語にも関わらず関数型とは関係はなくはないが実質関係無いという印象
関数型が好きな人は、C#におけるこの用語は勘違いしやすいかもしれない
まぁ、哲学的に考えればの話だけど

576:デフォルトの名無しさん
15/11/03 20:25:04.88 UfQouXyC.net
>>558
クライアント矩形だから位置は(0,0)に決まってますねー
親ウィンドウに対する相対位置を知りたいなら
GetWindowRectしてからMapWindowRectしないとー

577:デフォルトの名無しさん
15/11/03 20:30:37.38 sXl2Uj86.net
すばやい返事ありがとうございます
Mapの仕方がよくわからないんですけど
とりあえず単独で使うだけではだめなんですね
もう少し調べてみます
ありがとうございました

578:デフォルトの名無しさん
15/11/03 20:30:43.03 UfQouXyC.net
LINQなんて最初はコレクションに対する便利機能てんこ盛りの拡張メソッドという認識でOKじゃね?
罠とかあるから習熟してから突っ込んで考えればいいんであってー

579:デフォルトの名無しさん
15/11/03 20:32:31.59 VtUJC+iX.net
いちいち、delegate() { return x * 2; } とか書いてられないから、() => x * 2 のように簡潔に書けるようになったのではないか。
式ツリーのラムダ式とLINQのWhereとかで使われるラムダ式は、別物だと思う。
ラムダとか言ってるけど、所詮、デリゲートだし、シグネチャさえあえばメソッドを渡すこともできる。
() => x * 2 こういう表記の仕方をラムダ式と呼んでる程度でしかない。

580:デフォルトの名無しさん
15/11/03 20:53:44.50 QAKXUKz2.net
>>563
内部的な型が違うんだよ int a; の a と 3 はどちらもint型だが、後者には定数という属性も内部的には付与されている
コンパイラを作る側の人は意識しているが、使う側の人には意識させないように作られている
ある種の自動変換が入っているんだ
ラムダ式をデリゲートとしてしようしようとすると、自動的にラムダ式についているCompile()メソッドが発動してデリゲート型に変換してしまう

581:デフォルトの名無しさん
15/11/03 20:54:59.02 HNCOBt+u.net
>>541
ありがとうございます。解決しました。
しかし、なぜDataRowCollectionクラスがIEnumerable<DataRow>の実装でないのか疑問ではあります。
まあ歴史的な理由だとは思いますが…。
(例えばDataRowCollectionクラス実装時はジェネリックという概念がなかったとか…)

582:デフォルトの名無しさん
15/11/03 20:56:16.62 56qTwYt/.net
asp.netで
DataTable dt = new DataTable();
GridView1.DataSource = dt;
とやって、2次元のテーブルの中身をグリッドビューにEXCELの画面みたいに
出しているのですが、セルの中で改行させる方法が分かれば教えて下さい。

583:デフォルトの名無しさん
15/11/03 20:59:48.89 QAKXUKz2.net
DataSetクラスはジェネリックスの無かった.NET1.0の頃からあるからね
ジェネリックのDataSet欲しいね・・・

584:デフォルトの名無しさん
15/11/03 21:10:25.83 VtUJC+iX.net
>>565
ジェネリックができたのは、.NET 2.0。それ以前は、ジェネリックそのものがなかった。
DataRowCollectionあたりができたのは、.net 1.0だから当然、ジェネリックではない。
後からがIEnumerable<DataRow>ぐらい付け足せるだろうと思うかも知れないが、既存の古いコードを破壊しかねないという危険性がある。
非ジェネリックなものは、rows.OfType<DataRow>() でがIEnumerable<DataRow>に変換して利用するのが吉だろう。

585:デフォルトの名無しさん
15/11/03 21:25:41.32 Q+Hc78/A.net
URLリンク(ideone.com)
すみません...
このプログラミングの実行順序?というか解説を
お願い致します..

586:デフォルトの名無しさん
15/11/03 21:32:28.64 VtUJC+iX.net
>>569
断る。スレタイの言語名1000回読んで出直してこい。

587:デフォルトの名無しさん
15/11/03 21:36:42.56 Q+Hc78/A.net
あ、Cじゃないスレでしたね
すみませんでした

588:デフォルトの名無しさん
15/11/03 21:37:56.39 Qi78cw7w.net
どうでもいいけどヘタクソなサンプルだなあ
これ見て再帰スゴイとか思う学生がいるとは思えない

589:デフォルトの名無しさん
15/11/03 21:41:06.36 QAKXUKz2.net
キチガイ回答者のかまってちゃん発動かいな
死んでおけ

590:デフォルトの名無しさん
15/11/03 21:42:15.24


591: ID:Q+Hc78/A.net



592:デフォルトの名無しさん
15/11/03 22:07:18.95 UfQouXyC.net
aより前の文字コードがきたらどうすんだろ

593:デフォルトの名無しさん
15/11/03 22:40:42.74 UVzGbDip.net
サンプルなんだから特定の条件下で動けばいいんだろ。
この程度は自分なりにでも解析をしてから分からないところだけを質問して欲しいがな。

594:デフォルトの名無しさん
15/11/03 22:42:31.39 /yUCkyPR.net
DataTableExtensionsでいいんじゃね?

595:デフォルトの名無しさん
15/11/05 22:45:40.69 6rpVQh8a.net
超初歩的な質問ですみません
インターフェイスクラスを実装した構造体クラスがあって、その構造体クラスのインスタンスをあるメソッドに渡すとします。
そのメソッドの仮引数の型はインターフェイスクラスにしておきます。
このときに、メソッドの仮引数が値渡しであればコンパイルエラーとならないのに、参照渡しにするとエラーとなる理由はなぜなのでしょうか?

596:デフォルトの名無しさん
15/11/05 23:10:16.20 ExWVN0qD.net
>>578
構造体なのかクラスなのかはっきりせい

597:デフォルトの名無しさん
15/11/05 23:15:59.04 WQByrXLp.net
何言ってるかさっぱり分からん

598:デフォルトの名無しさん
15/11/05 23:17:05.85 JipnsoZF.net
>>578
参照渡しはメソッド側で引数に値を代入して書き換えできる
同じインターフェイスを実装した別の型の値を代入される可能性がある
また、値型をインターフェイスにキャストするにはボックス化が必要なのでコピーが発生するから参照渡しは不可
インターフェイス通したいならジェネリックのwhere使う

599:578
15/11/05 23:56:44.30 6rpVQh8a.net
>>579
すみません、構造体です。
まだあやふやな理解で申し訳ないです。
>>581
ボックス化というのがいまいちわかっていないですが、
値型を参照渡ししようとしてもコピーしないと出来ないということですか?
ジェネリックとは?ちょっと調べてみます。
ありがとうございます。

600:デフォルトの名無しさん
15/11/06 00:22:51.45 v3nYR+i3.net
intを渡すとして、
不可 → void Hoge(ref IComparable<int> cmp){}
可 → void Hoge<T>(ref T cmp) where T : IComparable<int>{}

601:デフォルトの名無しさん
15/11/06 00:31:22.76 dWA72Rvv.net
>>582
構造体(struct)にもインターフェースは、指定可能。
すべての型は、object型として扱えるため、object型に代入可能で、構造体(値型)も当然、objectとして扱える。
object型というのは、言い換えればobjectクラスなので、objectは、参照型。
構造体など値型を参照型として扱うとき必要なのがボックス化と呼ばれるもの。
また、インターフェースも参照型なので、インターフェースとして受けてしまうとボックス化が発生する。
イメージ的には、 ボックス化されるとき、new object( 10 ) のような感じで値型をラップした新しいオブジェクトが作成されている。
void Foo( IHoge x ) のようなインターフェースを受け取るメソッドに値型を渡しても、Fooメソッドでは、別のオブジェクトになっているのでいくら書き換えたところで無意味。
値型でなく、最初からクラスとして作っておけば、そういう問題は起きないが構造体を使いたい場合、下記のように制約付きのジェネリックメソッドを使うと良い。
static void Foo<T>( ref T arg ) where T : IHoge {
arg.Value = 100;
}
こうすれば、ボックス化は、発生しないで、IHogeインターフェースのメンバーを呼び出すことが可能となる。
refは、参照渡しさせるために必要。

602:578
15/11/06 00:42:25.19 pjudYN7I.net
>>583-584
教えていただいた通りに修正したらエラー解消しました。
詳細な解説ありがとうございます。
納得できました。

603:デフォルトの名無しさん
15/11/06 09:12:45.36 MQ0OQAyt.net
1つのプロジェクトから2つ以上のアセンブリを出力するようにってできる?
こんな感じにA.csproj → A.x86.dll A.x64.dll

604:デフォルトの名無しさん
15/11/06 12:16:37.98 955qm0wN.net
プロジェクト構成を追加する

605:デフォルトの名無しさん
15/11/06 12:19:39.17 dWA72Rvv.net
Any CPUじゃダメなの?

606:デフォルトの名無しさん
15/11/06 15:32:24.63 guayBMf4.net
ダメだろ

607:デフォルトの名無しさん
15/11/06 15:39:55.16 KrpwsfQj.net
クラスライブラリプロジェクトでEntityFrameworkを利用する
メインのプロジェクトではEFに直接関わるようなコードは一切書いていないのに
エラーが出て、どうやらApp.configをクラスライブラリのそれと同じように書き
EFもインストールしないといけないみたいですがなぜですか?
メインのコンソールアプリでは、
ClassLibrary1.Run();
としか書いていないのに

608:デフォルトの名無しさん
15/11/06 16:20:31.16 hUa1dWCf.net
>>588-589
dllならAny CPUで良い気がするけどな
>>590
そのクラスライブラリがEF使ってるからだろ

609:質問者
15/11/06 19:15:27.36 n93wU3zk.net
public const string[] names = { "abe", "kume", "ume"};
は何故できないの?
C#っておかしい

610:デフォルトの名無しさん
15/11/06 19:45:53.50 DdHE3j1N.net
歴史のある言語だし、配列のconstを許すと何か不都合があるんじゃないかな
知らんけど

611:デフォルトの名無しさん
15/11/06 19:49:11.59 JLRIGyKN.net
一般的な業務システムにEF使うのってお前ら的にどう思う?
DB周りに中間テーブル勝手に作られたり
とかどうなんかなーって思うんだけど

612:デフォルトの名無しさん
15/11/06 19:49:47.56 H8/mSBf4.net
C#のconstはmutabilityを示す修飾子ではない
mutabilityはクラス特性の一つにすぎない

613:デフォルトの名無しさん
15/11/06 19:52:12.27 O+3ivu6x.net
>>594
テーブル管理をきっちりして、メンテナンスが面倒な糞長いクエリ作らないことさえ心がければ問題ないと思う
それが出来るなら何でもOKだろと言われたらそれまでだが

614:デフォルトの名無しさん
15/11/06 20:01:54.19 hUa1dWCf.net
>>594
コードファーストで、プログラマがモデル変更したらDBレイアウト変わるとか
DB層とアプリ層と分離するような業務システムだとあり得ん
EFはコードファーストしかないわけじゃないけど
最近、既存DBからコードファーストとかいうわけわからんオプションも追加されたけど
EDM作らんで良いし、マッピングの自由度上がるから、これが結構いい感じだぞ
俺はこれをコードセカンドと呼ぶ事にしたw

615:デフォルトの名無しさん
15/11/06 20:02:50.21 Vl4Fajoj.net
構造体のconstもできないよね
あとIntPtr(これは仕方ないか)

616:デフォルトの名無しさん
15/11/06 20:04:07.68 v3nYR+i3.net
>>594
DBファーストなら中間テーブルは作られない(たぶん)
パフォーマンスに引っかからなければ採用していいと思う

617:デフォルトの名無しさん
15/11/06 20:07:22.09 v3nYR+i3.net
>>592
ミュータブルなら配列があれば許されたかもね…

618:デフォルトの名無しさん
15/11/06 20:11:37.63 VIb2xLBB.net
constはコンパイル時にリテラルを埋め込むからnewで生成するインスタンスはconstへ代入できない。
C#で配列を定数扱いしたければReadOnlyCollectionを使う。

619:デフォルトの名無しさん
15/11/06 22:35:43.69 ZOMBif/U.net
readonlyにするとそのメンバの参照を変えることはできなくなりますが、そのメンバのメンバの値は変えれますよね?
そのメンバのメンバもreadonlyにすることはできないんですか?

620:デフォルトの名無しさん
15/11/06 22:45:54.70 v3nYR+i3.net
メンバをreadonlyプロパティにすればいい
コレクションならIReadOnly~インターフェースがある

621:デフォルトの名無しさん
15/11/06 23:10:20.05 lDi+bZZ1.net
C#のmutabilityはクラス特性で備えるもので
修飾子で指定するものじゃないと言ってんだろ
理解力が不足しているのか?

622:デフォルトの名無しさん
15/11/06 23:18:27.60 dWA72Rvv.net
こんな感じでプロパティ作れば、初期化以外で変更できないようにできるけど…
shield class Hoge {
public int Property1 {
get;
} = 10;
public int Property2 {
get;
} = 20;
}

623:デフォルトの名無しさん
15/11/06 23:25:34.03 ZOMBif/U.net
>>603
ありがとうございます。使ってみます。
>>604
ちょっと調べたけどよくわかりませんでした。
久しぶりに会った友達に、おめ


624:ぇずいぶんとミュータブルなぁーって使う感じでしょうか?



625:デフォルトの名無しさん
15/11/06 23:28:23.63 x7E/To5I.net
>>605
もうちょっとこの構文は何とかならなかったのかと思うな…

626:デフォルトの名無しさん
15/11/06 23:42:18.13 KrpwsfQj.net
>>591
そこがよくわからないんです
クラスライブラリでしか使ってないEFが
なぜメインプロジェクトでもインストールして
App.configまで書き換えないといけないのか
例えば、zipライブラリやその他ライブラリを
ライブラリプロジェクトで使っていても
メインプロジェクトでそれらライブラリを参照しなくてもいけてます
同じように分離できないんでしょうか?

627:デフォルトの名無しさん
15/11/06 23:51:07.90 MmN1hyKF.net
>>604
その説明は、誤解を生みまくる
const言っているなら C++ のアレを意識しているんだろうから
C++のmutableとゴッチャになる

628:デフォルトの名無しさん
15/11/06 23:55:31.99 MmN1hyKF.net
Java全盛期の時代に、政治的な都合でJavaクローンとして生まれたC#ゆえ
書き換えに関する制御は基本的に期待しないほうが良い、というか諦めたほうが良いでしょう
当時constなど不要、高速化目的ならオプティマイザが頑張ればいいという考えが席巻していたから残念な事になってしまっている
目的は高速化じゃないといっても話聞きゃしない話聞かない回答者みたいなので一杯になってたからな

629:デフォルトの名無しさん
15/11/06 23:55:56.97 J1IjfUsv.net
>>608
ライブラリが特定の場所の特定のDBに紐付いてたら再利用性も柔軟性もクソもないだろ?
構成はアプリ側で指定するんだよ

630:デフォルトの名無しさん
15/11/06 23:59:22.58 /KOBRm1I.net
MVVMパターンについて質問です。
Modelクラスがツリーのデータを保持できるように定義されている場合、
class Model
{
 public List<Model> Children;
 public Model Parent;
}
ViewModelクラスはどのように作ればよいのでしょうか。

class ViewModel
{
 public ObservableCollection<ViewModel> Children;
 public ViewModel Parent;
}
ユーザーがアイテムを追加・削除した際の、VM~M間でのChilrenのやりとりで良い方法が思い浮かばないのです。

631:デフォルトの名無しさん
15/11/07 00:03:09.47 HCtDVk7w.net
地道にモデル側のコレクションにAddしたりRemoveするしかないんじゃないのっと

632:デフォルトの名無しさん
15/11/07 00:05:43.30 mc1zorkl.net
>>612
そんなもんModelをそのまま公開すりゃいいよ
いちいちラップするのは無駄に複雑になるだけ

633:デフォルトの名無しさん
15/11/07 00:10:14.79 bqVTu3cR.net
ちょっとなにいってるかわからないですね
何に使いたいのでVMいるのかがわからない

634:デフォルトの名無しさん
15/11/07 00:37:06.17 rJMrVjho.net
>>611
特定のDBには既にひも付けされてますよね?
Entityクラスを事前に静的に生成しているわけだし
特定の場所に関しては確かにそうですが
dbパスを渡すだけでいいはずなのになんでEF入れなきゃだめなんでしょ?

635:デフォルトの名無しさん
15/11/07 00:38:32.76 VdNkzOpu.net
mvvm関係ないけど、オブジェクトが持ってる参照をそのまま外に出すのとカプセル化の間でいつも悩む
かといって毎回コピーしたら遅いし

636:デフォルトの名無しさん
15/11/07 00:47:30.53 3j5S0EXp.net
>>617
インターフェイス通せばいいじゃない
>>612
選択したツリー項目毎に特定のVM表示したいの?

637:デフォルトの名無しさん
15/11/07 01:36:23.40 X2ab0wjO.net
>>616
EF使うのに入れなくていいと思う理論がわからん

638:デフォルトの名無しさん
15/11/07 01:55:38.19 rJMrVjho.net
>>619
実際に使うのはクラスライブラリ側だけだからです。
EFじゃなくて他のライブラリの場合は
メインプロジェクトに入れなくても動くのに
なぜEFだけ特殊なのかが知りたいんです

639:デフォルトの名無しさん
15/11/07 02:09:02.01 VdNkzOpu.net
>>618
やっぱそうなるよねぇ
操作用のインターフェース


640:作るの面倒だけど



641:デフォルトの名無しさん
15/11/07 03:22:43.92 X2ab0wjO.net
>>620
そもそもほんとにメイン側でなにもしてないなら
実行時に必要なライブラリがそろってれば良いだけで、メイン側プロジェクトにEFの参照いらないけど?
別に特殊でもなんでもない
もしそんな前提があるなら、ASP.NETでEF使えなくなるじゃないか

642:デフォルトの名無しさん
15/11/07 03:28:58.48 rJMrVjho.net
>>622
>>590
一行しか書いてないのになぜ参照がいるんですか?

643:デフォルトの名無しさん
15/11/07 05:33:11.29 cHn3VkC0.net
>>623
クラスライブラリ側のapp.configを見てごらん
EFをインストールしたときに書き換えられた部分があるでしょ
そしてよーく考えよう

644:デフォルトの名無しさん
15/11/07 17:24:35.95 X2ab0wjO.net
>>623
知らんがな
ソース全部晒してみろ
そういえば、エラー出るでどんなエラー出たか書かない奴の質問は答えるだけ無駄って誰かが言ってたな

645:デフォルトの名無しさん
15/11/07 17:54:38.72 1m+5NuQy.net
データベースやサーバーアプリでマイクロソフト系技術はもうだめだね
消えゆく運命だろ

646:デフォルトの名無しさん
15/11/07 23:27:09.98 qRUcE/WB.net
貴重な時間を浪費させていくスタイルだから無駄ではない
価値マイナス

647:デフォルトの名無しさん
15/11/08 00:28:50.73 QQOP8UEs.net
>>626
URLリンク(github.com)
やってることはこれと同じです
これもメインプロジェクトでインストールしてます
メインプロジェクトのApp.Configを書き換えない場合
エラー
No connection string named 'MyEntities' could be found in the application config file.
これをぐぐると、App.Configをメインプロジェクトにコピペしろと回答がある
が、コピペしても、
error 0152: No Entity Framework provider found for the ADO.NET provider
with invariant name 'System.Data.SQLite.EF6'.
Make sure the provider is registered in the 'entityFramework' section of the application config file.
となる、つまりインストールしろってことなんだろうけど

648:デフォルトの名無しさん
15/11/08 02:51:20.55 tK1NbI7K.net
>>628
それはアプリケーション定義ファイルを設定しろと言ってるだけで
EFをインストールしろとも参照設定しろとも言ってない
実際それじゃないが、メインアプリで参照設定なしでもアプリケーション定義ファイルを設定すれば動くのは確認した
(当然アセンブリは参照できるところに存在する必要はある)
なぜアプリケーション定義ファイルの設定が必要なのかは、EFのコンポーネントがデフォルトでそれを見に行くから
調べた感じではアプリケーション定義ファイルなしでも動くように出来そうだったけど、かなり手間かかりそうなので試してない
接続文字列だけなら簡単なんだが

649:デフォルトの名無しさん
15/11/08 03:54:18.19 QQOP8UEs.net
>>629
MyDbLibraryを参照すれば、設定なしで複数のアプリで同じDBを簡単に
取得出来るようにしたかったんですが
できなくはないけど、面倒そうですね
んーやっぱりEF使わないでやったほうが後々楽かな
私事のためにお時間取らせてしまって申し訳ない
調べて頂いてありがとうございます

650:デフォルトの名無しさん
15/11/08 10:17:34.08 gApUJ0pc.net
教えてください
■質問1
下記のような構造体を配列にして内容を格納しています
(本来はもっとパラメータは多いですが簡略して3つにしてます)
struct test {
 private int id; //100000以上からの6桁
 private string name;
 private int type;
 public Test(int ID, string Name, int Type) {
  id = ID;
  name = Name;
  type = Type;
 }
}
この構造体配列の中から該当するIDを検索し、その添え字番号を得たいです
ForEachやwhileなどのループ内でIDを比較するしかないでしょうか?
「C# 構造体 検索」でぐぐってみたものの、
どのようにすればいいのかが見当もつきませんでした
■質問2
そもそも、このようなデータを構造体として用意するのは良いのでしょうか?

以上、よろしくおねがいします

651:デフォルトの名無しさん
15/11/08 10:48:27.07 S9+EFBLU.net
LINQとかで検索するのもあるけど、Dictionary使うのがいいと思うが


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch