1 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 12:02:50.03 ID:845Zva4M.net] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、 質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part122 echo.2ch.net/test/read.cgi/tech/1468078489/ ■関連スレ C#, C♯, C#相談室 Part91 echo.2ch.net/test/read.cgi/tech/1467142749/ ■コードを貼る場合は↓を使いましょう。 ideone.com/ https://dotnetfiddle.net/ ■情報源 https://msdn.microsoft.com/en-us/library/gg145045.aspx referencesource.microsoft.com/
2 名前:デフォルトの名無しさん [2016/07/31(日) 12:14:02.41 ID:9Z6DmbVF.net] :::::::::::/ ヽ:::::::::::: :::::::::::| ば じ き i:::::::::::: :::::::::::.ゝ か つ
3 名前:ン ノ::::::::::: :::::::::::/ だ に は イ::::::::::::: ::::: | な。 ゙i :::::: \_ ,,-' ――--、..,ヽ__ _,,-'' :::::::,-‐、,‐、ヽ. )ノ _,,...- :::::_|/ 。|。ヽ|-i、 ∠_::::::::: /. ` ' ● ' ニ 、 ,-、ヽ|::::::::: ニ __l___ノ |・ | |, -、:: / ̄ _ | i ゚r ー' 6 |:: |( ̄`' )/ / ,.. i '- `ー---―' / '(__ ) ヽ 、 >>1 ====( i)==::::/ ,/ニニニ :/ ヽ:::i /;;;;;;;;;;;;;;;; [] [ここ壊れてます]
4 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 12:35:06.34 ID:m2m9StIS.net] おかしな人が湧きやすいスレだが、C#がそれだけ使われてるってことだろうな… ともあれ >>1 乙
5 名前:デフォルトの名無しさん [2016/07/31(日) 14:42:43.53 ID:JTJLwIya.net] 【閲覧注意】戦闘に巻き込まれて頭部を切断された少女の遺体。これがリアルなシリア。 dqnworld.com/archives/34.html これが本当の戦争の恐怖。この少女には大人の戦争は関係ないですからね。巻き込まれた少女の遺体を持って何か を訴えかけている男たちの映像です。 【閲覧注意】シリアで反体制派の兵士が顔を吹き飛ばされてしまう瞬間。 dqnworld.com/archives/89.html スローモーションが怖すぎる・・・。 【閲覧注意】アッラーフアクバルを叫びながら少年を斬首する映像を公開する。 dqnworld.com/archives/3975.html 点滴?のようなものが見えるんだけど。助けられた少年じゃなかったのか。助けられた所を強奪されてアッラーフ アクバル?なのかしら・・・。 【閲覧注意】磔にされた戦闘機パイロットの遺体。シリアにて。 dqnworld.com/archives/3996.html 今日のアッラーフアクバル動画。 【閲覧注意】この首吊り自殺、足スレスレだけど本当に死ねてる? dqnworld.com/archives/4001.html 中国で撮影された首吊り自殺の映像です。既に死んでいると書いてあるけど自分で揺らしているようにみない?www 妻の目の前でぶっ飛ばされた旦那さん?これは死んだかな(°_°) dqnworld.com/archives/4004.html さすがにこれだけ飛ばされたら助からないかな・・・。 【閲覧注意】あおむけでゲロを吐きまくっている男性。助けてやれよ・・・。窒息するぞ(@_@;) dqnworld.com/archives/4007.html これ結構危ないんじゃないの?撮影してないで横向きにしてやれよ。これ窒息する可能性あるだろ。
6 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 16:19:39.67 ID:yOUiaiD9.net] >>1 乙
7 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 16:41:06.49 ID:a7xaHxHC.net] >>1 スレ立て乙 質問からの派生の議論などは↓のスレで ふらっと C#,C♯,C#(議論用) echo.2ch.net/test/read.cgi/tech/1469538912/
8 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 16:58:20.07 ID:tdu9NojY.net] imgur.com/hulL0Ns.jpg 自分の説明が悪いようで申し訳ないです こういう感じでテーブルを作りたいと考えてます public 科目 { id 科目名 講師リスト 生徒リスト } それでもって追加するときに講師と生徒リストを結びつけたいと… ListBとCは同時に存在してはいけないとの話ですが それだと生徒から講師を、講師から生徒を検索するのができなくなりませんか? イメージとしてなんですが、講師・生徒が科目の外部キーを持つように、 講師には生徒の※2の青丸を、生徒には講師の※1の青丸を入れたいってなってます
9 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:00:54.97 ID:tdu9NojY.net] >>7 入れたいと言うよりは自動作成されるDのとこにある要素が※1と※2のみになってます ただ値が入らず…のような状況で
10 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:17:48.08 ID:7sIN5pY9.net] 上を基本にすると科目・講師が1対多、科目・生徒が多対多 さらに科目に追加する講師と生徒は関係性があり、その関係は多対多 多対多の関係はEFが勝手に中間テーブル作ってくれてそこには値が入ってない どうすれば入るのだろうか って話でしょ
11 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:19:35.06 ID:7sIN5pY9.net] >>9 科目・生徒も1対多 科目(C)を中間テーブルと間違えてるから俺と話があってないんだわ
12 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:24:13.82 ID:SlcEPNYS.net] >>7 >生徒から講師を、講師から生徒を検索する 科目が講師、生徒への(逆向きの)リレーションをもって 生徒-科目-講師 または、講師-科目-生徒 とたどればいいだけ ただその図のテーブルだと、講師が持てる科目は1つだし、生徒が持てる科目も一つだぞ
13 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:33:22.27 ID:SlcEPNYS.net] >>9-10 元の話はA,Bのリレーション飲みに着目して話をしてたんだが だから、Cはエンティティとして必要か?って聞いてたわけだが Cがエンティティとして必要なら(科目であるなら当然YESなわけだが)、Aが持つのはC つまり生徒が持つのは科目、講師が持つのも科目、生徒と講師の関係は科目を間に挟んでこそ成り立つ それだけの話だと思うが ちなみに >科目・講師が1対多 だと、一つの科目を複数の講師が講義する ってことになるんだが 一人の講師は複数の科目を受け持つ が正しいんじゃないかね 要件的には前者の要望もあり得るけど、それだとさらに設計ややこしいぞ
14 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:35:48.10 ID:7sIN5pY9.net] いや俺この人と話し合わない気がしてきた そういう逆引きじゃなくて科目から講師を、講師から生徒を辿れるようにリレーション作りたいんでしょ…と俺は思うんだが 中間テーブルに拘ってるのはそういう意味でしょ そもそもレスを見直して整理したら「中間テーブルは作成される」「でも中間テーブルに値は入らない」「何故ですか」
15 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:37:50.07 ID:0ENkURmo.net] >>7 情報の重複を避けるなら検索時にたぐる。検索性能が重要なら更新時に整合性をとるように メンテナンスする。このどちらしかないだろう。 なんか、やろうとしていることがどっちつかずのように思う。
16 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:38:34.43 ID:7sIN5pY9.net] >>12 科目に対して講師たくさん居るから別に問題ないでしょ むしろ講師のが多くて普通だと思うけど 複数の人が講義するじゃなくて、その科目を講義している人が複数居るって言ったら納得できんかね
17 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:43:50.97 ID:7sIN5pY9.net] もうさ科目吹っ飛ばしてシンプルにしたらどうだ 講師・生徒の多対多 public class A { public int Id {get;set;} public virtual List<B> ListB {get;set;} public A(){ ListB = new List<B>();} } public class B { public int Id {get;set;} public virtual List<A> ListA {get;set;} public B(){ ListA = new List<A>();} } static void main(){ A a = new A(); B b = new B(); // 1.Aへ要素を追加 // 2.Bへ要素を追加 } これでAB作られるわけだけどそれぞれのリスト持つから関係をどう作れば?って話でしょ たぶん1.2 解決したら終わり
18 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 17:56:44.40 ID:SlcEPNYS.net] >>13 科目、講師、生徒という話をするのであれば、少なくともその範囲においては「中間テーブル」なんてないぞ (科目と生徒で中間テーブルが必要になるかもしれんが、そこには言及してないので) 科目は中間テーブルではないし、そういう主張も説明してないはずだが そういう坂引きのそういうが何をさしてるのかわからんが >科目から講師を、講師から生徒 科目から講師は、科目が講師(群)を持つだけ 講師から生徒は、間に科目を挟め それだけだが >>15 >その科目を講義している人が複数居る 要件としてあり得ることは言ってるだろ 今回がそこまで考慮されてるのか?考慮するのか?って話だぞ まさに共同講演でもなければ、講師の違う科目は別科目として扱うほうが楽だぞ
19 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:06:10.43 ID:SlcEPNYS.net] >>16 それをやると、AとBの「中間テーブル」が勝手に作成されて Aを新規追加したら、A.ListBとAの関係は中間テーブルに勝手に保存される そんなのは前スレのどっかでできたって言ってただろ
20 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:08:13.77 ID:/2R1tIBn.net] >>7 科目も結合条件に入れると、RDBのややこしい話が出てきてしまうので、科目を無くした例じゃダメかい? それとも、科目が前提で悩んでるなら、条件をしっかり書いた方が良いと思うよ。
21 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:12:17.93 ID:ryfTyHLn.net] 俺と似たクラス図の問題抱えてるわ 俺が持つ写真リスト 俺が持つ友人リスト これが科目に当たるCの部分 写真リストは持っている写真 友人リストは写真に写っている人達 これがB, Cかな 写真1にはX, Y, Zが写っている 写真2にはX, Wが写っている 写真3にはX, Zが写っている ってことはこれも多対多じゃん? うわああああああああああ 写真1には誰が?→XYZ Xはどこに?→写真1, 写真2, 写真3 一方通行の向きでこうしたいってなってるけどこれも写真と友人に双方のリスト持たせなくて良いのか? それがないとLinQ使っても検索できる気がしないんだけど やろうとするとそれ専用のカラムをつけないといけない気がする
22 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:19:28.97 ID:/SDpmLey.net] >>18 え?だからそこの新規作成のコードで悩んでるんじゃないのか…? 俺も具体的にコードかけてないからでかい口叩けないけど
23 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:27:23.21 ID:SlcEPNYS.net] >>18 単純にAとBで多対多ってだけならできるんじゃないかと思うんだが 今回は三つのエンティティが必要なのに、 それを二つのエンティティとそのリレーションだけでなんとかしようとするから無理がある
24 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:33:38.70 ID:/2R1tIBn.net] >> 20 C#のコードになってないけど、こんなのじゃダメ? 各メソッドは写真友人の静的リストを操作。 写真{写真ID , Add友人(友人ID), Remove友人(友人ID) ,Get友人List()} 1 2 3 友人{友人ID , Get写真List()} X Y Z 写真友人{写真ID,友人ID} 写真友人の静的リスト 1,X 1,Y 1,Z 2,X 2,W 3,X 3,Z
25 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:41:18.13 ID:a7xaHxHC.net] 盛り上がっているけど元の質問者の意図から外れてないだろうな?w
26 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:42:04.34 ID:tdu9NojY.net] >>20 自分よりこちらのが例として良い気がします まさにこんな感じです… >>11 >>14 検索時に手繰ることも考えたのですが講師から生徒、生徒から講師を手繰るための専用の属性を追加する必要あるんじゃないか?となって それならそれぞれを追加するときに関係付けれたら良いよねとなって今に至っています。 科目を通した講師と生徒の関係性は保てるけども 講師と生徒だけの関係性ないよね?と言われててコーディングしなおしてまして… >>20 さんのだと識別できる写真から友人を、友人から写真を見つけるためには関連テーブルないと…みたいに同じ状況です
27 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:45:36.60 ID:hOdlxuRW.net] >>23 静的リストってのは自分で作るやつでええのかい なんか出来そうで出来なさそう 質問してる人俺と同じところで悩んでるからタイムリーすぎるわwww 写真-俺-友人と辿れそうな気もするけども 俺の例だと友人に写真1だと判断させる何かが要るよね そこで悩んでるのかな それなら同じ
28 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:49:53.18 ID:/2R1tIBn.net] >>26 DBに作るならテーブル プログラム上なら自分で作ったList<写真友人>を静的に持っておけば良いと思うよ。
29 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:54:30.55 ID:hOdlxuRW.net] >>27 staticってことかな 俺も静的に自分で作るのは考えたのだけど今質問してる人と同じで自動生成されるなら それ使いたいじゃん?ってなって使おうとしてる ただ使うと片方を追加したときにもう片方に反応して異常に追加される問題が発生してる entityState.Unchangedがうまくできない db.Entry(xx).Stateの引数がなに!?ってつまってる
30 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 18:59:32.34 ID:0ENkURmo.net] >>25 >>7 の図を信用していいなら、たぐるだけならAとBだけで科目IDを介して相互に可能だろう。 そのうえで検索の効率を改善したいというのであれば、その結果と同じものをそれぞれが持つよう 追加/削除の際にメンテナンスすればいいし、たとえば講師と生徒の組み合わせに対して 問い合わせしたいということであればそういうテーブルを用意すればよい。
31 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:07:58.59 ID:hOdlxuRW.net] >>29 横やりだけど俺と同じ状況って言ってるから科目は便宜的なもんだと思う 講師一人に対して生徒複数をn回繰り返してそのなかで生徒から講師を見たときに多対多が生まれてしまうよねって話かと思うわ 説明下手ですまん 俺と同じらしいから >>20 で考えると良いかも 科目・講師・生徒は俺も説明しづらい
32 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:37:21.76 ID:0ENkURmo.net] ん、悪いが意味がわからん。関係が多対多ならそういうものとして表現する必要があるだろう。 多対多のどこで困っているのか? >講師一人に対して生徒複数をn回繰り返してそのなかで生徒から講師を見たときに多対多が生まれてしまう 最初に講師の条件を指定しているんだからその条件を入れればそうはならんはず。 select * from A join B on B.x = A.x join C on C.y = A.y BとCの条件を忘れると結果がB×Cになってしまうという初歩的なミスに近い。
33 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:40:31.97 ID:SlcEPNYS.net] 多対多ってのは二つのエンティティ間のリレーション(+中間テーブル)の話 科目・講師・生徒ってのは三つのエンティティの話
34 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:46:32.00 ID:SlcEPNYS.net] とりあえずコード投下しとくわ public class 科目 { [Key, DatabaseGenerated(DatabaseGeneratedOption.None)] public int id { get; set; } public string 科目名 { get; set; } public List<講師> 講師リスト { get; set; } public List<生徒> 生徒リスト { get; set; } public 科目() { 講師リスト = new List<講師>(); 生徒リスト = new List<生徒>(); } } public class 生徒 { [Key, DatabaseGenerated(DatabaseGeneratedOption.None)] public int Id { get; set; } public string 生徒名 { get; set; } public List<科目> 科目リスト { get; set; } public 生徒() { 科目リスト = new List<科目>(); } } public class 講師 { [Key, DatabaseGenerated(DatabaseGeneratedOption.None)] public int Id { get; set; } public string 講師名 { get; set; } public List<科目> 科目リスト { get; set; } public 講師() { 科目リスト = new List<科目>(); } }
35 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:46:48.57 ID:SlcEPNYS.net] class MyDbContext : DbContext { public DbSet<科目> 科目リスト { get; set; } public DbSet<生徒> 生徒リスト { get; set; } public DbSet<講師> 講師リスト { get; set; } public MyDbContext() { this.Database.Log = p => System.Diagnostics.Debug.WriteLine(p); Database.SetInitializer(new DropCreateDatabaseIfModelChanges<MyDbContext>()); System.Diagnostics.Debug.WriteLine(this.Database.Connection.ConnectionString); } }
36 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:47:49.62 ID:SlcEPNYS.net] using (var db = new MyDbContext()) { db.科目リスト.Add(new 科目 { id = 1, 科目名 = "政治学" }); db.科目リスト.Add(new 科目 { id = 2, 科目名 = "経済学" }); db.科目リスト.Add(new 科目 { id = 3, 科目名 = "社会学" }); db.講師リスト.Add(new 講師 { Id = 1, 講師名 = "山田" }); db.講師リスト.Add(new 講師 { Id = 2, 講師名 = "田中" }); db.講師リスト.Add(new 講師 { Id = 3, 講師名 = "池上" }); db.生徒リスト.Add(new 生徒 { Id = 1, 生徒名 = "ジョン" }); db.生徒リスト.Add(new 生徒 { Id = 2, 生徒名 = "マイク" }); db.生徒リスト.Add(new 生徒 { Id = 3, 生徒名 = "ジェーン" }); db.SaveChanges(); 続く
37 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:48:13.11 ID:SlcEPNYS.net] //既存生徒、講師を持った新規科目の追加 var k = new 科目 { id = 991, 科目名 = "池上 特別講義" }; k.講師リスト.Add(db.講師リスト.FirstOrDefault(p => p.講師名 == "池上")); k.生徒リスト.AddRange(db.生徒リスト); db.科目リスト.Add(k); db.SaveChanges(); //生徒も講師も新規な新規科目 k = new 科目 { id = 992, 科目名 = "臨時講習会" }; k.講師リスト.Add(new 講師 { Id = 9921, 講師名 = "外部講師1" }); k.講師リスト.Add(new 講師 { Id = 9922, 講師名 = "外部講師2" }); k.生徒リスト.Add(new 生徒 { Id = 9921, 生徒名 = "外部聴講者1" }); k.生徒リスト.Add(new 生徒 { Id = 9922, 生徒名 = "外部聴講者2" }); k.生徒リスト.Add(new 生徒 { Id = 9923, 生徒名 = "外部聴講者3" }); k.生徒リスト.Add(new 生徒 { Id = 9924, 生徒名 = "外部聴講者4" }); db.科目リスト.Add(k); db.SaveChanges(); 続く
38 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:49:08.60 ID:SlcEPNYS.net] //外部講師1の全生徒検索 var ks = db.講師リスト.FirstOrDefault(p => p.講師名 == "外部講師1").科目リスト.SelectMany(p => p.生徒リスト); if (ks == null) return; foreach (var item in ks) { Console.WriteLine(item.生徒名); } これでまだ何かあるならもう知らん
39 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:49:21.54 ID:a7xaHxHC.net] >>36 ■コードを貼る場合は↓を使いましょう。 ideone.com/ https://dotnetfiddle.net/ 参照しにくい上にレスの無駄遣いになる
40 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:51:10.96 ID:SlcEPNYS.net] ああ、最後に}が1個抜けた >>33 がエンティティ定義 >>34 がコンテキスト定義 >>35 からが操作側のコードな
41 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 19:51:36.36 ID:/2R1tIBn.net] ideone.com/TowsRy ideone.com/5bG0vs なんか間違ってたらスマンな。 ローカルでは普通に動いた。 中間テーブルにもデータが出来てる。
42 名前:40 mailto:sage [2016/07/31(日) 19:54:16.46 ID:/2R1tIBn.net] SaveChangesが2回入ってしまった。 途中のは消してもOK
43 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 20:02:32.08 ID:SlcEPNYS.net] >>38 すまん。次からそうする エンティティ定義だけでもここで示したかったんだ 勢いで全部張った 今では反省している
44 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 21:18:29.04 ID:hOdlxuRW.net] このコードって俺の関係でも使えるのかな
45 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 21:24:06.50 ID:hOdlxuRW.net] レスを見直してたんだけど 講師の人のだと外部キーとしてListBとCのどちらか必要ないってのは何故なんだろ 講師から見たら科目・生徒をそれぞれを紐付ける重要なファクターだと思ってしまう
46 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 21:33:38.39 ID:SlcEPNYS.net] >>44 講師生徒の話と、ABCの話を混ぜるなと 講師と生徒に直接の関係がないから、講師が生徒を持ってるのはおかしい あるいは A.ListBとA.C.LisstBが必ず同一なら、同一の情報を複数個所に持つ必要がない 同じことしか言ってないし、C#もLinqも関係ない話だからそろそろ終わりにしてくれ
47 名前:デフォルトの名無しさん [2016/07/31(日) 22:44:17.15 ID:KRNaJHTC.net] それにしてもセミの鳴き声がうるさいなw
48 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 02:30:05.89 ID:whHwDgoj.net] なんで切れてんだこいつ
49 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 11:01:28.50 ID:O5g9L92b.net] プログラミングでフラッシュっていったら初期化のことですか? それともデータを消すということなのか、いまいちわかりません
50 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 11:09:29.37 ID:9b8KRrTw.net] 人で例えると下剤を飲むカンジかな
51 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 11:17:47.86 ID:cs1OuQE6.net] トイレの流すボタンも英語でFlash書いてあるな まーバッファに溜まったもの全部処理して空にする
52 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 11:59:02.14 ID:yIP/hXrs.net] flush じゃなくて? Hattenが流れるトイレ
53 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 12:00:39.94 ID:3q+qs35i.net] >>48 flush はデータキャッシュの仕組みの一部 受け渡しを省いて貯めこんだデータを一気に吐き出す 大抵は少しずつ吐き出してるから気にしないことも多いけど これを忘れるとデータが行方不明になったりする Flash なら Web で主流だったマルチメディアのための技術 ただし既に寿命が尽きた
54 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 13:05:26.23 ID:0PxnJBWw.net] Flushは便所を流すもので、Flashは禿頭に輝きを足すものだ。
55 名前:デフォルトの名無しさん [2016/08/01(月) 13:24:33.39 ID:ju4FPINm.net] 髪の話をするな繰り返す髪の話をするな
56 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 14:31:00.92 ID:0PxnJBWw.net] >>53 Oh, Your head is Glitter! ※「髪」の話ではない。
57 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 16:30:14.78 ID:LUOh4w+m.net] dataSetクラスのRejectChangesメソッドについて質問です メロンパンの価格を105円から110円に変更した後にRejectChangesメソッドを使って変更前の105円に戻すサンプルコード書いてるのですが dataset.Tables["Table1"].RejectChanges();を実行させるとTable1の全データが空白になります dataset.Tables["Table1"].Rows[0].RejectChanges();と行を指定するとその行だけが消えて サイトに書いてるような編集前に戻すことができないのですがどこが間違っているのでしょうか ご教授ください okwakatta.net/code/dst12.html
58 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 16:30:50.61 ID:buiAh0Ub.net] >>52 ため込んだデータはそこにあるのになんでflushしないとデータが消えるんですか?
59 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 16:41:36.34 ID:LUOh4w+m.net] 自己解決しました dataset.Tables["Table1"].AcceptChanges();を変更したいコードの上に書けばよかっただけみたいです
60 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 17:14:31.62 ID:cesk8lNx.net] >>57 c#のメソッドの話ではないので スレ立てるまでもない質問はここで 143匹目 [無断転載禁止]©2ch.net echo.2ch.net/test/read.cgi/tech/1464139565/ に移動してください
61 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 19:33:00.40 ID:EwKQYn8n.net] >>48 フラッシュの意味が知りたいならバッファーとかキャッシュとかが なぜ必用になるのかを理解する必要がある。
62 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 20:05:09.44 ID:Pl/m9xU5.net] >>54 変な帽子〜
63 名前:デフォルトの名無しさん [2016/08/02(火) 01:47:26.69 ID:1tBm9uAw.net] 頭かゆい
64 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 08:11:40.81 ID:WvYs1Olo.net] >>50 トイレでFlash焚くと逮捕されますよ
65 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 17:02:17.62 ID:4WoLw3FF.net] Task.Factory.StartNew()を断続的に使用しているのですが、 何回も繰り返している内に遅くなってくるのは、なぜでしょうか? ちなみに、スレッドは2個以上立ち上がらないように、処理はしています。
66 名前:デフォルトの名無しさん [2016/08/02(火) 19:29:24.95 ID:zxqOD1qT.net] >Task.Factory.StartNew()を断続的に使用しているのですが、 >何回も繰り返している内に遅くなってくるのは、なぜでしょうか? Taskは確かに完了してんの? Task内の処理が遅くなるの?スケジューリングが遅くなるの? >ちなみに、スレッドは2個以上立ち上がらないように、処理はしています。 これはどうやってやってるの?
67 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:34:29.82 ID:PbRjMUHM.net] >>59 話が発展して他の言語の話になっただけだろ お前頭おかしいの?うっとうしいからこのスレから消えろ
68 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:44:08.05 ID:JEZ5M90/.net] でも話が冗長だったよね
69 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:46:44.78 ID:S5QMVoml.net] そもそもの質問が >プログラミングでフラッシュっていったら だったからなぁ… (普通はくだ質スレ案件)
70 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:49:24.49 ID:S5QMVoml.net] あ、前スレでPOSTがどうたらやってた人か? その続きってことか? (…なら追い出されて当然…とか言うとまたキレるからやめとこう)
71 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:50:29.93 ID:PbRjMUHM.net] 関連として出てきた話すらこっちのスレでどうぞっていうだろ? 9割C#の話で対比で別の言語の話が出たとしてもだ、自治もここまでくるとキチガイの域
72 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:51:01.29 ID:LBy6cWLg.net] >>68 だよな。
73 名前:デフォルトの名無しさん [2016/08/02(火) 19:51:07.63 ID:PbRjMUHM.net] >>69 (…なら追い出されて当然…とか言うとまたキレるからやめとこう) この一行いる?ww
74 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:52:16.33 ID:LBy6cWLg.net] >>70 9割C#の話で対比で別の言語の話が出たとしてもだ、自治もここまでくるとキチガイの域 >>ここまでくるとキチガイの域<< >>キチガイの域<< ・・・これがサイコパシーか。
75 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:53:16.80 ID:1biageaY.net] >C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください よろしくお願いします
76 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:53:58.84 ID:PbRjMUHM.net] 盛り上がってきた? ID:LBy6cWLg ID:LBy6cWLg は煽り屋だから絶対にレスは怠らないんだよな 反論しようかなぁ…
77 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:59:46.23 ID:LBy6cWLg.net] >>70 とりあえず、自分で調べて覚えていくといいよ。 ttps://msdn.microsoft.com/ja-jp/library/system.io.stream.flush(v=vs.110).aspx ttps://msdn.microsoft.com/ja-jp/library/system.io.stream.close(v=vs.110).aspx 例えばこれ。 機械翻訳で日本語が変だから、英語モードにして、マウスを英文に当てながら日本語訳と照らしあわせて読むと便利。
78 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:00:54.63 ID:PbRjMUHM.net] なんで俺が質問したことになってんのかなぁ…
79 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:01:50.48 ID:PbRjMUHM.net] 自治厨って何が楽しいんだろう? 話が弾めばそれでよくね?
80 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:03:01.77 ID:l2W1ufxp.net] いつもの連投君だからみんなスルーしてね
81 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:03:44.52 ID:LBy6cWLg.net] あぼ〜んしました。
82 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:09:29.37 ID:PbRjMUHM.net] どんな話題でも受け付けるのにflushの話もだめってちょっとおかしくね? flushとC#の関係で話弾ませばいいでしょ
83 名前:デフォルトの名無しさん [2016/08/02(火) 20:15:54.16 ID:PbRjMUHM.net] >>80 いっとくけど煽った事実を取り消すために質問に答えてもお前がまともな人間ではないことは確かだぞw こういう話題もいいんじゃね?的な提案に対してよくそれだけ舐めた口がきけるな
84 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:23:15.88 ID:PbRjMUHM.net] はい次w
85 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:37:36.46 ID:PbRjMUHM.net] >>79 違います、スレ進行は平和にいきましょう
86 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:46:08.44 ID:HL5T2dK4.net] >>81 その通りだから馬鹿は無視してレスすりゃいいんだよ。 だいたい言うまでもないが「○○の話題は禁止」なんてレスが一番非生産的でスレ違い。
87 名前:デフォルトの名無しさん [2016/08/02(火) 21:23:22.41 ID:zxqOD1qT.net] なんだいつものか とっとと死ねよ
88 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:24:28.86 ID:cFVAdB/l.net] 他人に文句を言うんじゃくて答えてあげればいいだろ 答えられないなら、質問の内容がこのスレにあっているか判断できてないんだから誘導した他の人に文句言うなよ 一般的な話なら他のスレでやったほうが詳しい人やわかりやすい説明できる人が多いだろ Flushの動作は実装に強く依存するから下手に具体的なこと書くと不正確だったり、当てはまらなかったりするんだよなあ C#レベルだと、「そういう決まりだから」が答え
89 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:44:17.44 ID:PbRjMUHM.net] 誘導してる奴こそ質問もしないし答えもしないし存在価値ないだろ… Flushについては俺はどうでもいいけどさ、Bufferとの違いが分からないくらいかな
90 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:52:45.92 ID:HL5T2dK4.net] 抽象的な答えはキャッシュを実体に反映させるのがflushって感じかな。 だから前も書いたけどそもそも何故どういう場面でキャッシュが必用になるか理解してないと 動作の意味を実感するのは難しいのかもしれない。
91 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:56:38.82 ID:PbRjMUHM.net] OS理解してないと言葉だけ見て色々考えても仕方ないんじゃない?
92 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 23:30:14.10 ID:9ycx7XAc.net] つ ふらっと C#,C♯,C#(議論用) [無断転載禁止]©2ch.net echo.2ch.net/test/read.cgi/tech/1469538912/
93 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 02:38:27.77 ID:FoKdYgy2.net] >>88 回答もせ
94 名前:ず暴言を吐き、質問しにくい環境を作り出すお前はそれ以下だぞ Flushとかキャッシュの考え方はOSというよりももっと一般的なものだな ソフト側で実装することもあるし、ディスクのミドルウェアとかでも使われうる技術 OSとかミドルウェアとかはさすがにスレチだから、そういうのも含めて誘導だろ [] [ここ壊れてます]
95 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 06:32:38.78 ID:hBXg68Dk.net] >>91 過疎スレへの誘導…嫌がらせ行為に他ならない こんな奴が批判されずにずっと粘着し続けてるんだな
96 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 07:22:04.65 ID:PM+UcDni.net] インスタンス化したクラス以外からオブジェクトを利用するにはどうすればいいのですか? 雰囲気としてはこんな感じのことがしたいのですが・・・・・ https://dotnetfiddle.net/Widget/nEDDet
97 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 08:39:40.08 ID:Ls2YKypB.net] void Ccc(Aaa a) { Console.WriteLine(a.i); } 普通はこうする
98 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 08:40:02.50 ID:ZXeq6keH.net] >>94 public void Ccc(Aaa aaa) { } と、定義する
99 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 11:17:14.95 ID:uW5WiLiF.net] 一応こっちでもいいよ。 public class Aaa{ public int I{get;set;} } public class Bbb{ public Aaa A{get; private set;} public Bbb(Aaa a) { A = a; } public void Ccc(){ System.Console.WriteLine(A.I); } } class Hello { public static void Main(){ // Here your code ! var aaa = new Aaa(); var bbb = new Bbb(aaa); aaa.I = 1; bbb.Ccc(); System.Console.ReadKey(); } }
100 名前:デフォルトの名無しさん [2016/08/03(水) 13:41:35.76 ID:m0rhFcyF.net] Attaching an entity of type failed because another entity of the same type already has the same primary key value. 主キーが二つあるってエラーなのかなこれ AがBクラスのリストを持っている構造でエラーが起きています
101 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 13:48:06.96 ID:v7zxzFcD.net] >>98 ソースが無いと、何をやろうとしてエラーになってるか分からないっす