ふらっと C#,C♯,C#(初心者用) Part135

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8b75-uWnk)
垢版 |
2018/02/04(日) 22:02:28.59ID:FbKpa1HN0
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part134
http://mevius.5ch.net/test/read.cgi/tech/1511951038/
■関連スレ
C#, C♯, C#相談室 Part95
http://mevius.5ch.net/test/read.cgi/tech/1508180530/
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/

■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
2018/02/23(金) 21:47:11.90ID:HTtnUDjj0
日曜大工プログラマーなんだけど、実際Linq使わないってなるとプロの方はどういうことを基本としてるの?
プロの方々なら当然Linqも理解して手段の一つとして持ってると思うけど
あえてそれは使わないってなると、同じこと実現するのに何が基本となるのかまじめに教えてください
2018/02/23(金) 21:56:01.30ID:ls86f3vQ0
周りにはlinq使うなよと吹聴しつつ自分は使うというのが最高に決まっとる
739デフォルトの名無しさん (アウアウカー Sa0a-V3L7)
垢版 |
2018/02/23(金) 22:02:51.89ID:I1cwUeCia
>>737
察してw
2018/02/23(金) 22:29:12.34ID:dt6qd38x0
>>736
どういう理屈で?w
2018/02/23(金) 22:51:27.85ID:xGnoN5r+0
LINQなんて銘打たれてても只のパターンだからねぇ
デリゲートがインライン展開されるならまだしも
switchまみれのIEnumerator<T>とかは草生える

どうせコントロール追加もAddよりAddRangeの方が良いし
概ねArrayやList<T>のメソッドで済む事が多いな
あと拡張メソッド多すぎでIntelliSenseの邪魔、フィルタが面倒
742デフォルトの名無しさん (ワッチョイ 2175-42by)
垢版 |
2018/02/23(金) 22:57:32.27ID:n9Q43L/40
効率はすでに言った通りだからともかくとして、このスレのlinqの質問のほとんどはarrayやlistのメソッドでは事足りないだろう
2018/02/23(金) 23:12:07.47ID:xGnoN5r+0
LINQ使わずに同等の処理をしたいならそれこそReference Source参照で良いんじゃね
個人的にはyieldもブロックスコープで最適化したくなる妙な実装に思えるけど
2018/02/24(土) 01:47:48.09ID:e/zFcSBBa
徹夜の日に限って変な流れになってるな
2018/02/24(土) 09:13:57.78ID:Pu6BYc+K0
LINQとか表記は割りとどうでも良いからユニットテストがきちんと書けるソースコードにして欲しいと、200行超えの他人のクソメソッドをメンテしてて思った
リファクタリング楽しいです(^q^)
746デフォルトの名無しさん (ワッチョイ 2175-xOks)
垢版 |
2018/02/24(土) 09:20:58.48ID:QPTXris90
スレチ
747デフォルトの名無しさん (ワッチョイ 709d-saxG)
垢版 |
2018/02/24(土) 19:03:52.84ID:53z7t7hD0
Span実験してみたい。しかしSystem.Memoryインストールに失敗する。何でだろう?
2018/02/24(土) 19:57:24.71ID:5mJYGSafa
スレチだからだろ
2018/02/24(土) 20:04:36.63ID:+6d6qq1k0
素人ながらに四苦八苦しながら小規模の業務アプリを作っているのですが
Program.csに、アプリケーションに保持させておきたい情報をまとめた自作クラスを
staticで保持させておいて、全フォーム通してそれを読み出せるのかと考えたのですが
愚行でしょうか?
2018/02/24(土) 20:07:50.60ID:cFklsH6f0
>>749
なんの問題があるの?
Program.csでなくてもいいし発想そのものはCとかのヘッダファイルとかと同じだよね
2018/02/24(土) 20:14:50.00ID:S6y2USoia
>>749
本当にその必要があるならその方法でグローバルな情報を持ってOKだと思う。
前に同じ質問で「そんなものコンストラクタの引数で渡せ」と書いてた人がいたが、
むしろそっちの方が不適切。

でも、本当にそれが必要なのかは再考した方がいいかもね。
グローバルなデータなんて普通はそんなにいらないよ

>>750
だからそれを聞いてるんでしょw
っていうかヘッダファイルって意味不明だよww
2018/02/24(土) 21:09:31.61ID:0Rn3tA0A0
>>749
普通はVSのフォームデザインでプロパティからApplicationSettingにてPropertyBindingを行う
プロジェクトのプロパティに設定一覧も出るし、スコープで保存先を変えられる、コードでの扱いは↓
https://docs.microsoft.com/ja-jp/dotnet/framework/winforms/advanced/how-to-write-user-settings-at-run-time-with-csharp
2018/02/24(土) 21:18:10.67ID:EVv4WFMKM
>>749
どんな設定かによって答えが変わるので情報出して
汎用性考えるならインジェクションだけどまだ練度が足りないかな
754デフォルトの名無しさん (アウアウカー Sa0a-V3L7)
垢版 |
2018/02/24(土) 21:28:23.83ID:kaoxpwmua
質問よろしいでしょうか
ある複数のパラメータを持ったクラスを他のクラスのメンバに代入すると、そのパラメータが変更されたら代入先のメンバも書き変わってしまいますよね?
一度代入した時点から勝手に書き変わられたくない場合、パラメータを持ったクラスがクローンを返すような実装をするのがいいんでしょうか。他に定石等あれば教えて頂きたいです
2018/02/24(土) 21:48:34.45ID:+6d6qq1k0
みなさまご教授ありがとうございます

グローバルを持つべきか再度よく検討の上やってみたいと思います

>>752
自作クラスだと一手間いるのと、修正しやすさでProgram.csに置きたいなと
756デフォルトの名無しさん (ワッチョイ 2175-42by)
垢版 |
2018/02/24(土) 21:53:04.14ID:QPTXris90
ApplicationSettingsは自作クラスじゃなくてVSのきのうだよ
2018/02/24(土) 21:54:11.29ID:+6d6qq1k0
>>753
端末のIPやらMacアドレスのほか、データベースへの接続文字列を実行中に随時切り替えて接続させてるのですが
そのためのList<string>とかです
あとはNotifyIconをおいて、アプリの動作状況によって各Form上からも通知アイコンの画像を変更させてます
2018/02/24(土) 23:53:38.00ID:KMKYwria0
>>754
構造体とかイミュータブルオブジェクトとか
2018/02/24(土) 23:56:37.57ID:5mJYGSafa
定石なんてないよ

ふとReduxが思い浮かんだ
2018/02/25(日) 00:27:16.22ID:9Ag532Mra
>>754
(1) クローンを返す
(2) イミュータブルな別の型(インターフェイス or コンポジション)として返す
(3) 気にしない
2018/02/25(日) 07:34:26.22ID:/V/K592r0
>>757
切り替える条件は?
2018/02/25(日) 07:44:13.77ID:r9nYZ4dr0
>>754
メンバに参照を保持るのは禁じ手

そのインスタンスが死んだらハングアップすんじゃん
必要であるたびにメソッドの引数から必要な分だけ必要な形で渡すのが真っ当なやり方
2018/02/25(日) 07:52:39.23ID:JzRpHb2B0
>>755
そのファイルにクラスおいた方が楽って感覚がわからないな
1クラス1ファイルが基本だし別のファイルおいた方が色々楽だと思うけど
まさかないと思うけどpublicなインナークラスにするのはよくないから気をつけてね
2018/02/25(日) 08:09:40.74ID:zTlznGKg0
>>761
拠点毎のデータベースと、全拠点と端末を管理したり共通の設定情報を保持するデータベースとわけてるので
必要な情報に応じて動的につないでSQL文を実行させてます
>>763
全体を管理するデータベースの情報を元に端末毎に動作する権限や機能を割り当てるようにしてるので
起動するフォームを異なります
なので、初回フォームが起動する前に端末情報をProgram.csに保持させたいということと
異なる役割の端末(Form)からでも共通の設定値を利用したかったからです

>まさかないと思うけどpublicなインナークラスにするのはよくないから気をつけてね
この辺の理解がだめです・・・(書籍を読んで独学で一人でやってます)
外部クラスなりにProgram.csにおいたStaticな自作クラスにアクセスさせてはだめってことなのかと理解しましたが
具体的にどうだめなのかがさっぱりで・・・
2018/02/25(日) 09:12:28.17ID:2NYrBiBT0
Listで中にclassをaddしていって
中のclassが解放されて歯抜けになって状態でaddした場合
nullの配列にaddされるか
歯抜けになったのをソートして埋めることって出来ない?
2018/02/25(日) 09:17:00.34ID:9xGztD1y0
自分で明示的にnull代入しない限りListが歯抜けになったりしないだろ
2018/02/25(日) 09:17:08.24ID:2NYrBiBT0
Listで型をclassにしてaddしていって
格納したclassがいくつか解放されて歯抜けになった状態でaddしたときに
歯抜けになった配列を埋めるようにaddされるか
歯抜けになったのをソートして埋めることって出来ない?
2018/02/25(日) 09:18:12.91ID:CDH/Z0oO0
Removeじゃダメなの?
769デフォルトの名無しさん (ワッチョイ 30d2-Oqyw)
垢版 |
2018/02/25(日) 09:19:46.70ID:2NYrBiBT0
>>766
いくつかaddして
listとは関係なく外部でclassを解放した場合
歯抜けになるでしょ
2018/02/25(日) 09:20:59.44ID:CDH/Z0oO0
ならねーよ
2018/02/25(日) 09:21:11.90ID:9xGztD1y0
その外部でclassを解放するって具体的に何のクラスのどのメソッドを呼んでいるんだい
772デフォルトの名無しさん (ワッチョイ 30d2-Oqyw)
垢版 |
2018/02/25(日) 09:22:46.35ID:2NYrBiBT0
>>768
解放したいんじゃなくて
解放されて歯抜けになったとこにaddするか
ソートして歯抜けを埋めたいんだって
2018/02/25(日) 09:22:50.63ID:r9nYZ4dr0
dipose呼んだらゾンビになるだけでそいつはそいつだぞ
2018/02/25(日) 09:32:30.72ID:9xGztD1y0
まあ、いいや
超常現象でnullになるとしよう
Addに自動で隙間を埋めるような介護機能はない
IndexOfでnullの場所を探すのみ
775デフォルトの名無しさん (ワッチョイ 30d2-Oqyw)
垢版 |
2018/02/25(日) 09:43:15.18ID:2NYrBiBT0
まじかよ
listが無限にふくらんでいくじゃん
2018/02/25(日) 09:46:55.08ID:r9nYZ4dr0
removeしろよ
2018/02/25(日) 09:58:59.63ID:hHxXPhxe0
Listと配列を同じだと思ってそう
2018/02/25(日) 10:22:48.34ID:JzRpHb2B0
>>764
何を言ってるのかよく分からないけど、
Program.csにProgramクラスとTestクラスを作るのと、Program.csにProgramクラスTest.csにTestクラスを作るのは同じ
どっちでもいいけど普通は後者かな

ただ、以下のようなインナークラスにはするなってこと
static class Program{
...
public static class Test{}
}
2018/02/25(日) 10:30:01.83ID:zTlznGKg0
>>778
よくわかってなくてすみません
ただ、まさにインナークラスになる記述です
具体的に避けるべき理由を教えて頂けませんか?
2018/02/25(日) 10:37:08.47ID:vhA3QBh60
>>769
classがオブジェクト参照を意図するなら、Listが持っている時点でインスタンスは解放されない
Dispose()はアンマネージリソースといった“メンバーの解放”でインスタンス自体を解放はできない
GCは強参照されていないインスタンスしか解放しないので、明示的に代入しない限りnullに成りようがない

ひょっとしてやりたいのはこういう事か?(※機械翻訳のようで日本語が不自由
https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/weak-references
IDisposableに処分済みインターフェイスは無く、ObjectDisposedExceptionを投げるクラスは独自の内部フラグ
2018/02/25(日) 11:05:57.21ID:Ydc/tL+DM
>>779
関係ないクラスを一緒くたに管理しないほうがいいってこと
マシン設定ならマシン設定
データベース設定ならデータベース設定
権限管理なら権限管理
アイコン管理ならアイコン管理
プログラムは1つ1つ関心ごとに分けて後で組み合わせるのが基本
設定項目も一緒くたにしないで個別に設定クラスを作る
782デフォルトの名無しさん (ワッチョイ 709d-saxG)
垢版 |
2018/02/25(日) 11:08:26.61ID:D3C+bdq60
それはインナークラスとどう関係あるって?
2018/02/25(日) 11:13:41.43ID:6DcyW01S0
>>779
アクセス名が長くなるから外に出せば見栄えが良くなる。
public staticだから動作には関係ない
ここで何でも聞いて気にするより動かしてみて確認したほうがいい
2018/02/25(日) 11:14:15.87ID:JzRpHb2B0
>>779
Programのデフォルトの公開範囲がprivateだから

って思ったんだけどクラスって省略されるとinternalなんだね
じゃあ別にやってもいいかな
ただ、各フォームから起動元であるprogramクラスにアクセスするのは違和感があるからインナークラスは推奨しない
よく言われるグローバル変数にせず、フォームの起動時に引数で渡せばいいと同じレベルの話だから余り気にしなくていいかも
785デフォルトの名無しさん (ワッチョイ 709d-saxG)
垢版 |
2018/02/25(日) 11:24:18.30ID:D3C+bdq60
>普通はVSのフォームデザインでプロパティからApplicationSettingにてPropertyBindingを行う
これはどういう意味や?
バインディングってのはデータソースがコロコロ変わる時に便利なだけだろ。何でグローバル変数みたいな
変わらんものに「普通は、、、、使う」なんて言いきれるんだ。
意味わからん。
2018/02/25(日) 11:43:52.16ID:/V/K592r0
グローバル変数(static変数)なんて難しすぎる機能は初心者には扱いきれないでしょう
普通にコンストラクタやメソッドに必要なものを渡していけば確実、安全、簡単だよ

var loginForm = new LoginForm();
loginForm.ShowDialog();
var loginUser = loginForm.LoginUser;

var loginService = new LoginService();
loginService.Login(loginUser);

var systemInfo = SystemInfo.Read();
var databaseModule = new DatabaseModule(loginUser, systemInfo);
var authModule = new AuthModule(databaseModule, loginUser, systemInfo);
var domainService = new DomainService(databaseModule, authModule);
var iconManager = new IconManager("url://to/icon/resource/base");
var formFactory = new FormFactory(databaseModule, authModule, domainService, iconManager, loginUser, systemInfo);

Application.Run(formFactory.CreateMainForm());

loginService.Logout(loginUser);
2018/02/25(日) 12:40:23.67ID:wniuxD5kM
設定値と処理を密にすると
設定値集Aと設定値集Bとか異なる設定で動かさなきゃいけないときにウザいよ

それを消そうとするとグローバル変数は消えるけど
仕様でそういったもんが別にいいなら問題は起きない
環境変数みたいにインストール時に固定なんだよ的な
788デフォルトの名無しさん (ワッチョイ 709d-saxG)
垢版 |
2018/02/25(日) 14:52:23.69ID:D3C+bdq60
>グローバル変数(static変数)なんて難しすぎる機能は初心者には扱いきれないでしょう

何を根拠に難し過ぎるというのか意味不明だ。
 複雑だからか? どう複雑なんだ? 複雑なわけない。w
 他に難しい理由があるのか? 誤動作するからか? するわけない。w

 ちゃんと理由を上げて説明してみろよ。
789デフォルトの名無しさん (アウアウカー Sa0a-msg2)
垢版 |
2018/02/25(日) 19:09:25.59ID:xxKEYzcHa
>>758-760>>762
ありがとうございます
参考になりました。頂いた内容で再検討してみます
2018/02/25(日) 20:38:41.80ID:vwrCxs9l0
入力可能なコンボボックスの値を取得したい。
ドロップダウンで選択した値を取得する事は出来た。
手入力した値を取得するのはどうすればいいのでしょうか?
https://i.imgur.com/Xh6vU1X.jpg
791デフォルトの名無しさん (ワッチョイ 2175-xOks)
垢版 |
2018/02/25(日) 21:04:14.02ID:ky9/2g4Z0
ググったら
selecteditem.tostring()でやってるのが多いけどそれだとどうなの?
2018/02/25(日) 21:29:08.12ID:vwrCxs9l0
>>791
こうですか?
if (comboBox.SelectedItem != null)
//cb = ((ComboBoxItem)comboBox.SelectedItem).Content.ToString();
cb = comboBox.SelectedItem.ToString();
else
//comboBox.SelectedIndex = -1;
cb = comboBox.Text
}

値の前にこんな文字も取得してしまいす
System.Windows.Controls.ComboBoxItem:

if〜で選択した値は取得できてます。
else〜で手入力した値を取得したいのですがうまくいきません。
2018/02/25(日) 21:35:40.19ID:k+qPaZYXa
>>790
何が聞きたいのかもっと明確にしないと誰も答えようがないと思うw

説明が下手なら(たぶんそうだと思うがw)人に冗長だと思われることをいとわず
くどくど馬鹿丁寧に書いて
2018/02/25(日) 21:57:50.75ID:E3f9DkoA0
編集可能コンボボックスを編集してSelectionChangedイベント発生するか?
2018/02/25(日) 22:21:01.20ID:kwOkeHWk0
>>792
cb = comboBox.Text
これだけで良くない?
if elseで分岐させる意味よく分からない
2018/02/25(日) 22:23:56.77ID:IwpMQIZw0
>>794
しないね。

>>790
KeyUpイベントでComboBoxのTextプロパティを読めば良い。
2018/02/25(日) 22:25:29.96ID:r9nYZ4dr0
killfocus的なイベントで取得しねーとあれっしょ?
2018/02/25(日) 22:37:52.36ID:kwOkeHWk0
ValidatedとかTextChangedとか
2018/02/25(日) 22:45:14.31ID:vwrCxs9l0
>>795
そうすると、値を手入力したときに、選択した項目の値がおかしくなるんです
2018/02/25(日) 22:45:54.95ID:IwpMQIZw0
>>797
そこら辺はケースバイケースかな。

>>798
WPFみたいだから、そのイベントは無いぞ。
2018/02/25(日) 22:48:34.92ID:vwrCxs9l0
>>798
これは駄目でした
private void comboBox_TextChanged(object sender, TextChangedEventArgs e)
{
String cb = comboBox.Text;
}
2018/02/25(日) 22:54:38.23ID:vwrCxs9l0
>>797
調べてみます
2018/02/25(日) 23:00:56.88ID:vwrCxs9l0
>>796
なるほど
ありがとうございます
2018/02/25(日) 23:02:36.17ID:vwrCxs9l0
そもそもコンボボックスでリストにない値を使うやり方がおかしいんですかね?
2018/02/25(日) 23:28:03.64ID:AIuTVnPta
<ComboBox x:Name="cb" IsEditable="True" TextBoxBase.TextChanged="cb_TextChanged" />

private void cb_TextChanged(object sender, TextChangedEventArgs e)
{
var text = cb.Text;
}
2018/02/25(日) 23:40:26.62ID:IwpMQIZw0
>>805
おぉ、そんな使い方が。

>>798
すまない。>>800は間違いだった。
2018/02/25(日) 23:53:51.22ID:npewet1XM
>>805
出来ました。ありがとうございますm(_ _)m
2018/02/26(月) 00:11:00.52ID:hAs6kjEMa
>>807
スマホで撮った画像を上げるのはよくない
コードを貼れ

画像を貼るにしてもwindows標準のsnipping toolで必要なところだけ切り取ってアップしろ
2018/02/26(月) 00:25:33.17ID:bBkiOmsnM
>>808
すみません
PCでここを開けなかったもので…
画像サイズもデカすぎました
次から気をつけます
2018/02/26(月) 02:36:13.76ID:RH+QBeERa
そんなしょうもないことに上から目線で偉そうにいう馬鹿に謝る必要ないのにw
2018/02/26(月) 07:59:36.31ID:6yy+ByjQ0
マウントスレ
2018/02/26(月) 08:19:52.65ID:RRYIMw3l0
一歩引いた視点からスレを冷静に観察できる俺カッケー
2018/02/26(月) 11:48:50.77ID:lZacsmbR0
ふらっとだからマウントしたくて堪らないんだよ
2018/02/26(月) 11:55:19.10ID:kiZk/D3sM
Mt.LINQ
2018/02/26(月) 15:59:59.36ID:0MjsGOBH0
>>812
ブーメラン刺さってんぞ
2018/02/26(月) 19:30:52.07ID:dPho+2cQ0
StreamWriterでファイルの末尾へ書き込む場合、
ファイルのサイズは書き込み速度に関係しますか?
2018/02/26(月) 19:42:02.15ID:dPho+2cQ0
>>816
すいません、自己解決しました
2018/02/26(月) 19:42:03.98ID:0ZOHeiQ90
しない
2018/02/26(月) 19:47:14.80ID:dPho+2cQ0
>>818
回答でいいんですよね?
そのようです。ありがとうございます
2018/02/26(月) 20:06:12.31ID:FENePymH0
なんでだろうね?
関係しそうな気がするのに不思議だよね
2018/02/26(月) 20:12:24.74ID:Vig1K9Wwa
逆にどんなファイルシステムなら影響が出るのかそっちの方が気になるよw
2018/02/26(月) 20:14:11.43ID:aBQXIVru0
ただのラッパーだから分からないが正解。Streamに依存するが正解。DATならまあ遅くなるわな。
2018/02/26(月) 20:22:12.73ID:Vig1K9Wwa
そうかな
CMTだろうが穿孔テープだろうが関係ないと思うけどw
2018/02/26(月) 20:31:00.70ID:aBQXIVru0
これがデジタルネイティブか。恐るべし。
2018/02/26(月) 20:41:26.85ID:Vig1K9Wwa
関係ないよw
メディアの問題というよりファイルシステムの問題

シーケンシャルにしかアクセスできないからシークが遅いとか、そもそも追記ができないとかいう話なら分かるが、
追記可能なのに書込み速度がファイルのサイズに影響するファイルシステムってちょっと思いつかん
826デフォルトの名無しさん (ワッチョイ 2175-xOks)
垢版 |
2018/02/26(月) 21:24:17.61ID:ogwj8qdY0
屁理屈アスペ
2018/02/26(月) 21:43:49.74ID:FENePymH0
>>825
記憶媒体がどういう仕組みで記憶してるのかよくわからないから
メモリみたいなの想像してみた
追記に足りない領域しか空いてなかったら再確保するんじゃね?みたいな
2018/02/26(月) 22:09:14.31ID:iEsMppLq0
えっdokanとかでも影響無いの。エビデンスは?
829デフォルトの名無しさん (ワッチョイ 24c3-POFq)
垢版 |
2018/02/26(月) 22:29:50.26ID:gUsCTQbp0
業務アプリばっかりやってきて最近のトレンドに全くついていけてない老害に教えてやってほしいのですが、
●やりたいこと
WPFアプリ、SQLite(最新)を使用、EntityFrameworkで実装したい
DBはそれほど複雑でなく、せいぜい2つのテーブルをjoinする程度、あとは、各テーブルをCRUDする感じでサンプルに毛が生えたようなレベルです。

.NETのバージョンはv4.6.1とした場合、
どのパッケージを使用したらよいだろうか?が知りたいです。

参考にしたいな、と思った記事は、
https://qiita.com/massu/items/b2546a0d876e207de882#%E3%83%A2%E3%83%87%E3%83%AB%E3%81%AE%E4%BD%9C%E6%88%90

SQLiteで簡単にEFできるかな?と思ってコードを眺めていました。

だが、パッケージ名で.NET Coreを使用するように見えてしまい、
WPFで使っていいの?など何が何やら、、、

本人のバックグラウンドとしては、v3.5程度までの業務コーディング知識は
あるつもりなのですが、なかなか最近の技術、名称についていけておらず。。

最近のトレンドに乗りつつ、知識をつけつつ開発したいと思っています。
ちなみにこのアプリは業務使用ではないのです
2018/02/26(月) 22:49:45.69ID:38VYcXav0
>>829
この辺参考にならんかな
https://msdn.microsoft.com/ja-jp/magazine/mt742867.aspx
2018/02/26(月) 22:54:42.80ID:WVKxaYLHa
>>829
まずはこの辺の誤解を
・WPFは最近のトレンドなどではなく、とっくの昔に死んだ技術である
・EFはサーバー用のオーバーヘッドが極めて大きいフレームワークであり、デスクトップアプリで使うものではない
2018/02/26(月) 22:54:54.35ID:368iDdw70
ここに出てるよ
https://docs.microsoft.com/en-us/ef/core/platforms/
2018/02/26(月) 22:59:10.38ID:DUs1D+akM
一番大きなギャップは、今の.NET界は完全にWebに傾倒していて、コミュニティの話題や新しい技術はほぼ全てWebであるということだな
デスクトップアプリなんか完全に時間止まってるから.NET 3.5の知識だけで全く問題ないよ
2018/02/26(月) 23:09:05.92ID:vKciEg6e0
>>831
>EFはサーバー用のオーバーヘッドが極めて大きいフレームワークであり、デスクトップアプリで使うものではない
ソース
2018/02/26(月) 23:47:01.79ID:bGZXNZ9L0
WPFも死んだ技術だったのかーw
2018/02/26(月) 23:49:12.54ID:iwJ2EGnFd
>>831
「死んだ」の定義を
トレンドでないというのはその通りだが
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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