[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/24 23:11 / Filesize : 262 KB / Number-of Response : 1015
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん (ワッチョイ f201-IwB9) mailto:sage [2022/11/25(金) 13:16:08.91 ID:HZEumDr50.net]
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を3行冒頭に書くこと(1行分は消えて表示されない為、もう1行は予備)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part156
https://mevius.5ch.net/test/read.cgi/tech/1663479569/
■関連スレ
C#, C♯, C#相談室 Part96
https://mevius.5ch.net/test/read.cgi/tech/1639965805/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries/
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries/
https://referencesource.microsoft.com/
https://source.dot.net/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

910 名前:デフォルトの名無しさん mailto:sage [2023/03/05(日) 23:54:52.18 ID:wm/Rzcr70.net]
>>898
IDの発行と書き込み時のタイムスタンプはトランザクションに書き込んだタイミングで同時に行われるから
結局IDとタイムスタンプの順番はおなじになるんじゃね?
コミットのタイミングなど何処にも記録されない

911 名前:デフォルトの名無しさん mailto:sage [2023/03/06(月) 00:04:07.46 ID:+8ntKfDE0.net]
トランザクションの外から見た場合、タイムスタンプが古いレコードが後から現れたりするのは変わらん。

912 名前:デフォルトの名無しさん mailto:sage [2023/03/06(月) 00:47:16.07 ID:ai8Q1Y+e0.net]
>>887
>インサート順とコミット順が前後する可能性はあるけどインサート順とidentityの大小は基本的に保証されてる
インサート順ってなんのことを言ってるの?
まさかSQLの発行タイミングのことをいってるのか?

913 名前:デフォルトの名無しさん mailto:sage [2023/03/06(月) 08:34:46.51 ID:WDk1SNWF0.net]
また始まったのか・・・

914 名前:デフォルトの名無しさん mailto:sage [2023/03/06(月) 08:41:17.38 ID:jJIeXpQ30.net]
何度スレチだと言われても耳を貸さない連中だから放っておくしかないべ

915 名前:デフォルトの名無しさん mailto:sage [2023/03/06(月) 09:01:59.17 ID:Qy0wg21h0.net]
ニートだからスレタイ読めないのか、スレタイ読めないからニートなのか、それが問題だ!

916 名前:デフォルトの名無しさん mailto:sage [2023/03/07(火) 16:27:16.46 ID:R6IzsuUJ0.net]
Blazor Desktop でアプリ作る場合、JS 使うのって邪道ですか?
普通はどうなんでしょうか?

917 名前:デフォルトの名無しさん mailto:sage [2023/03/07(火) 16:29:37.59 ID:nGiwAbPE0.net]
>>905
邪道というより仮想DOMがよくわかってないと難しいぞ

918 名前:デフォルトの名無しさん [2023/03/07(火) 21:34:13.24 ID:eLRrbAoH0.net]
>>905
別に邪道じゃないよ
猫ジョーカーもPrism.js使ってた



919 名前:デフォルトの名無しさん mailto:sage [2023/03/07(火) 22:25:01.39 ID:/W+QRqxd0.net]
コントロールのプロパティをVisual Studioのプロパティからいじるのと、
コードに直接記載するのはどっちがベストプラクティスでしょうか?

920 名前:デフォルトの名無しさん mailto:sage [2023/03/07(火) 23:03:26.48 ID:iHhQsjAZ0.net]
>>908
好きなほうでいいよ
自動生成か自分で記述するかは些細な違い
コメントも残したいなら当然、load以降のタイミングだね

921 名前:905 [2023/03/08(水) 00:27:21.36 ID:OaTx32y+0.net]
>>906-907
ありがとうございます。
今既に使ってるんですが、後になって「JS使わない為のBlazorだろ」とか「JSなしで出来ねーのかよ」
とかいう謎のイチャモン言われるのがちょっと怖かったのです。

922 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 07:00:30.67 ID:+lL6bJso0.net]
Load以降じゃなくてもコンストラクタでも良くない?

923 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 07:59:37.27 ID:UYleOs8I0.net]
>>910
マウイ君みたいなキチガイは無視でいい

924 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 08:08:55.61 ID:dTyeizIq0.net]
>>908

デザイン画面との差異が発生しにくいから
コードじゃないと設定できない事以外は基本的にはフォームデザイナでやってる
コードでやられると、一々実行して確認しないといけないし
人によって書き方・書く場所違ったりして追うのが邪魔くさい

925 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 08:51:11.40 ID:qdKF3wc3d.net]
フォームデザイナは良いんだけど、変更値をコードに出力する方法あるのかな
パラメーターシート作る時毎回困る

926 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 09:11:44.28 ID:h0XeijSda.net]
>>914
designer.cs

927 名前:デフォルトの名無しさん [2023/03/08(水) 09:16:43.12 ID:jVki9SUw0.net]
昨日一日、メソッドが動かなくて悪戦苦闘してたが
単に、メソッドを割り当ててたボタンのクリックイベントが
なぜか外れてただけだった!
くそ!!!!

928 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 09:22:20.21 ID:h0XeijSda.net]
>>916
なぜ外れたかはともかくなんでそれで一日悪戦苦闘することになるんだ?
真っ先にイベントハンドラにブレークポイント張らないか?
それで呼ばれなかった場合Shift+F12で一発でわかるだろ



929 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 09:50:33.13 ID:NmLqgG0dM.net]
>>914
デザイナで設定した値全部ドキュメントに出力すんの?不毛すぎる
ドキュメントから初期化メソッドのソース生成するならまだ分かるが

930 名前:デフォルトの名無しさん [2023/03/08(水) 10:51:13.94 ID:jVki9SUw0.net]
>>917
デバッガの見方がいまいちよくわかってないからなwww
分かりやすいサイトあったら教えてくれ

メソッドのケツで止まってるような表示だったから
中身ばかり見てた
結局、関係するところ全削除して
ボタンを配置しなおしてクリックイベント設定したら
最初のメソッドで動いた

931 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 12:46:01.79 ID:qdKF3wc3d.net]
>>918
既定値から変更した箇所って原則全て網羅してパラメーターシートに出してるけど
これ仕事だと普通じゃないの?
不毛なの?

932 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 12:48:38.98 ID:qdKF3wc3d.net]
>>915
これにコードとして出力されるのね
理解した

933 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 13:11:31.27 ID:/RllHwwua.net]
>>920
普通ではないし意味もわからんがそうすることになってるなら仕方ないな

934 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 13:13:09.06 ID:/RllHwwua.net]
もし普通ならもっと簡単にできる仕組みが一般に広まってないとおかしい

935 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 14:24:27.05 ID:6WeulyynM.net]
>>920
普通じゃない
むしろ何に使うんだ?

936 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 14:52:43.10 ID:iEMOw9f1M.net]
お客様に見せつけてお金を貰います

937 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 17:00:31.74 ID:VS7v+oF80.net]
しかしchatgptやべーなー…
ちょっと前ならここで聞くか迷うような質問がガンガン出来てしまうしかなり詳しい回答が返ってくる
勉強の補助として使うには最高だわ

938 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 17:02:00.64 ID:/RllHwwua.net]
マジかよ
信じるのかあれを



939 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 17:07:23.70 ID:i5ZyQ2rsM.net]
あいつここの住人と同じで息するように嘘つくぞ
しかも2021年までのデータしか無いんだろ?
最新の内容は無理ぽ

940 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 17:21:25.63 ID:UUazuFXC0.net]
出鱈目でも自信満々にそれっぽく説明してくるからな
知識が無いと嘘なのか判断出来ないから質が悪い

941 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 17:53:41.74 ID:KzA+PBQYa.net]
スシロー・ペロペロ法を用いて平方根を導出するコードをC#で作成せよ。ただしバカッター係数は3.0とする。

以下はC#でのスシロー・ペロペロ法を用いた平方根の計算の例です。バカッター係数は3.0とし、入力値はdouble型とします。

csharpCopy code

using System; class MainClass { public static void Main (string[] args) { Console.Write("Enter a number: "); double num = Convert.ToDouble(Console.ReadLine()); double guess = num / 2.0; // 初期値をnumの半分に設定 double error = num * 0.001; // 許容誤差はnumの0.1% double diff = 1.0; // 初期値は適当な値 while (diff > error) { double prevGuess = guess; // 前回の推定値を保存 guess = (guess + num / guess) / 2.0; // 新しい推定値を計算 guess = (3.0 * guess - prevGuess) / 2.0; // バカッター係数を適用 diff = Math.Abs(guess - prevGuess); // 推定値の変化量を計算 } Console.WriteLine("Square root of " + num + " is " + guess); } }

上記のコードでは、ユーザーに数値を入力してもらい、その平方根を求めます。最初の推定値は入力値の半分に設定し、許容誤差を入力値の0.1%とします。バカッター係数を適用するため、スシロー・ペロペロ法の通常の更新式の前に、前回の推定値と現在の推定値の重み付き平均を求めます。そして、推定値の変化量が許容誤差以下になるまで、この更新式を繰り返します。最終的に求められた平方根を出力します。

ChatGPT Feb 13 Version. Free Research Preview. Our goal is to make AI systems more natural and safe to interact with. Your feedback will help us improve.

942 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 17:58:25.85 ID:KzA+PBQYa.net]
ChatGPTすげーな

943 名前:デフォルトの名無しさん mailto:sage [2023/03/08(水) 18:11:57.15 ID:KzA+PBQYa.net]
スシロー法(Suzuki-Roiter Algorithm)は、平方根を求めるアルゴリズムの一種です。このアルゴリズムは、ニュートン法や二分法などの他の平方根アルゴリズムに比べ、比較的単純であり、また高速なアルゴリズムの一つです。

スシロー法では、次のような手順で平方根を求めます。

求めたい数値xと、初期値aを設定します。

aを用いて、次の式によりbを求めます。b = (a + x / a) / 2

aとbの差を求め、ある閾値(例えば、0.0001)以下であれば、bを平方根として返します。差が閾値よりも大きい場合は、bを新たな初期値として、ステップ2に戻ります。

以下は、C#でスシロー法を実装した例です。バカッター係数は、コード内のコメントに記載されています。

944 名前:デフォルトの名無しさん (ワッチョイ 41da-zdzo) mailto:sage [2023/03/09(木) 03:15:28.74 ID:CHgoITyz0.net]
すまん、誰か知ってたら教えて。
ASP.NET CoreのIHostedServiceを実装したバックグラウンドサービスで、
ef.coreのDbContextをコンストラクタでDIした。

ローカルPC上の開発環境では問題なく動いてしまう。
ローカルで動いたのでAWSなどのクラウド上にデプロイすると
Error while validating the service descriptor 'ServiceType: Microsoft.Extensions.Hosting.IHostedService Lifetime: Singleton ImplementationType:~
Cannot consume scoped service 'hoge.DbContext' from singleton 'Microsoft.Extensions.Hosting.IHostedService'.
とエラーが出て起動できない。

つまりIHostedServiceはsingletonでef.coreのDbContextはScopeServiceだからDI出来んよということだと思うだけど、
じゃぁなぜローカルでは動いてしまうんでしょう?

C#と関係ないかもだけど、適切なスレが見つからなくて。。

945 名前:デフォルトの名無しさん mailto:sage [2023/03/09(木) 07:31:12.85 ID:Azdv+gVA0.net]
お前マウイだろ

946 名前:デフォルトの名無しさん mailto:sage [2023/03/09(木) 12:24:29.91 ID:0FhUXViP0.net]
違う環境で動かないのをなぜ、ときかれても

環境が違うから

としか答えようがないわけだが

947 名前:デフォルトの名無しさん [2023/03/10(金) 10:06:26.28 ID:eWY0TFlg0.net]
またボタンのクリックイベントが勝手に外れたよ


948 名前: しかも二つ同時に
デザイナーが悪いのか
さらにその裏で何か悪さしてるのか
[]
[ここ壊れてます]



949 名前:デフォルトの名無しさん mailto:sage [2023/03/10(金) 10:09:15.50 ID:cbogJmpl0.net]
お前が悪いんだよw

950 名前:デフォルトの名無しさん mailto:sage [2023/03/10(金) 10:10:11.36 ID:GTZI+M+4p.net]
バージョン管理ツールの使い方を間違えてる奴が居るんだろ
旧バージョンからの修正を上書き更新する様な奴が

951 名前:デフォルトの名無しさん mailto:sage [2023/03/10(金) 18:24:12.28 ID:xFwaknBvM.net]
>>936
入門1週間~1か月あるあるだな

過去に誰もが通る道じゃないかな
答えは操作を間違ってるから

ボタンをコピペするとイベントは付かない
同様にカットアンドペーストしても付かない
ボタンを他のページなどに移動させる際にカットアンドペーストを使うとそういう状態になる

どこかにいったんドラッグ移動させてから再度ドラッグ移動させるとうまくいくよ

952 名前:デフォルトの名無しさん mailto:sage [2023/03/12(日) 09:27:27.50 ID:TpUonps10.net]
FontDialogで既定のフォントを指定するのに
fontdialog.Font = myFont のようにするだけではダメで
結局インストールされているフォント全部とmyFont.Nameを比較して一致するものを探した

953 名前:デフォルトの名無しさん mailto:sage [2023/03/15(水) 23:56:35.07 ID:Z/0CGH7g0.net]
webアプリを作ってみようといくつかの記事を読んでみるとよくコントローラークラスなるものを見かけます
UIとオブジェクトを紐付ける役割というのはぼんやりとイメージは理解できました
全然知見が無いのですがMVCパターンを用いた開発が一般的なのでしょうか?

954 名前:デフォルトの名無しさん mailto:sage [2023/03/16(木) 07:34:34.54 ID:ROTa9WZ40.net]
一昔前はそうだった。
今は、UI側はAngularやらReactやらで作る
バックエンドのASP.NET CoreはUIからのリクエスト(ほぼJSONオンリー)を受け取って、結果をJSONで返すのみ。

あえて言うならMVCだけどVの部分が別世界で進化した結果、MicrosoftのRazorビューエンジンがほぼ使われていない感じ

955 名前:デフォルトの名無しさん [2023/03/18(土) 06:09:34.00 ID:eIMKVM/V0.net]
Blazorの、
1. bind-value:set と bind:set の違いを教えて下さい。
2. bind-value:get と bind:get の違いを教えて下さい。

-value があってもなくても普通に動いてしまうので、違いが判らないです・・・

956 名前:デフォルトの名無しさん (ワッチョイ e15f-ny0K) mailto:sage [2023/03/19(日) 02:39:15.79 ID:OF2pFVcA0.net]
rem #ignore thumbnails created by windows
rem #Ignore files build by Visual Studio
rem --------------------------------------
rem *.exe
rem --------------------------------------
del /s Thumbs.db
del /s *.obj
del /s *.pdb
del /s *.user

957 名前:デフォルトの名無しさん [2023/03/21(火) 00:50:51.05 ID:Bhi15WWz0.net]
MAUIの場合って、XAMLがどうC#に変換されたかってどこ見るの?
objフォルダを見ても、それっぽいファイルなさそうに見えるんだけど・・・・

958 名前:デフォルトの名無しさん mailto:sage [2023/03/21(火) 03:41:54.37 ID:rEPYZ+tza.net]
>>941
Ruby on Rails の勉強方法なら、以下に書いた

★★Java質問・相談スレッド184★★
https://mevius.5ch.net/test/read.cgi/tech/1632019965/174

YouTube で有名な雑食系エンジニア・KENTA の初心者向けRailsサロンが有名。
学校は、Rails専業のRUNTEQ、東京フリーランスのデイトラなど多数ある

Rails チュートリアルのRails 5 なら、無料で読める。
他には、黒田努の3冊の本もある

YouTubeのDeanin



959 名前:デフォルトの名無しさん [2023/03/23(木) 22:03:01.14 ID:ryYHyvf60.net]
すまんが、このカッコだらけの行ってC#の文法的にはどういう意味なの???

> protected override void OnAppearing()
> {
> ((Models.AllNotes)BindingContext).LoadNotes(); //この行ってどういう意味なの!?!?
> }

https://learn.microsoft.com/ja-jp/dotnet/maui/tutorials/notes-app/?view=net-maui-7.0&tutorial-step=4
より

960 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:08:43.88 ID:JMZIdmVT0.net]
(型)変数 で型変換(キャスト)
次のカッコは演算子の優先度の調整
最後の()はメソッド()を実行

961 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:15:45.29 ID:qBpx1Wc1p.net]
BindingContextをModels.AllNotesのオブジェクトとみなしてそこのメソッドLoadNotes()を実行せよ
って意味

962 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:17:49.58 ID:qBpx1Wc1p.net]
そして危険だからそんなコードは書くな

963 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:21:24.70 ID:vqNy8gvnM.net]
>>947
初心者にはMAUIは厳しすぎるからやめておいた方がいいよ
MAUIはあれこれ全部できる人が触るものだから

964 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:22:35.96 ID:uJd1wH6P0.net]
今どきの書き方は
if(BindingContext is Models.AllNotes hoge)
{
  hoge,LoadNotes();
}
かな

965 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:23:42.33 ID:vqNy8gvnM.net]
.Net MauiはC#はもちろんのことWPFも出来てUWPも程度理解できてandroidとiOSとかわかる人が触るものです

C#のコードがわからん人が触っていいもんじゃない

966 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:49:45.58 ID:JMZIdmVT0.net]
>>952
見逃すより例外で落ちる方が安全だろ

967 名前:デフォルトの名無しさん mailto:sage [2023/03/23(木) 22:56:58.85 ID:aGomThyA0.net]
>>954
ケースバイケースだろ

968 名前:デフォルトの名無しさん [2023/03/23(木) 23:18:27.74 ID:ryYHyvf60.net]
>>948
せんきゅー!ぱっと見てわかんなかったぜ!



969 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 08:38:29.11 ID:WNAKtpEt0.net]
>>952
(BindingContext as Models.AllNotes)?.LoadNotes();
でも許して

970 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 10:57:33.74 ID:voS66bkR0.net]
改修で追加処理がある時に変更が面倒くさいから普通にif文使ってほしい
単数と複数で処理にほとんど違いなんかないのに記述が大きく違うなんてバカみたい

971 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 11:43:39.02 ID:cICfJqWEa.net]
普通にif文使わせるとお前らそれが面倒でnullチェックしなくなるからこういうのができたんだぞ

972 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 11:56:33.39 ID:y0Wu1mms0.net]
シリアルポートで受信する時に、DataReceivedだと時々発生しない時があります。
送受信データが一対一ならasync/awaitで出来ましたが、
要求しない時でもデータが来る場合はバックグラウンドでThreadかBackGroundWorkerをブン回すのが良いでしょうか?

973 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 13:10:53.39 ID:WNAKtpEt0.net]
ReceivedBytesThresholdの値をデカくしたりしてないよね?

974 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 13:33:28.53 ID:y0Wu1mms0.net]
ReceivedBytesThresholdを0や1にしてもダメでした。
受信バッファに残っているので、恐らく受信処理を行っている最中に受信したデータはそのまま溜まっている物と思われます
次にイベントが発生すれば溜まっているByte数分処理すればいいのですが、イベントが発生しない限り溜まったままになってしまうので、それならいっそバックグラウンドから受信バッファを監視した方が安定して受信出来るかなと思いました。

975 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 13:56:06.33 ID:vhRHyZcc0.net]
DataReceivedの処理が終わって待機処理に入る前に再度受信バッファに残ってないか見に行くのが定石では

976 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 14:03:20.04 ID:y0Wu1mms0.net]
受信処理が終わったら受信バッファをチェックですか、ありがとうございます

977 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 14:48:35.31 ID:wJZ29icvp.net]
キューに積んで終わりくらいの時間で次が来るんか?

978 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 15:24:57.72 ID:y0Wu1mms0.net]
ところでシリアル通信のサンプルコードを見てもDataReceivedの処理後に受信バッファを見てる物を見たことが無いのですが、定石のコードはありますでしょうか?



979 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 15:27:55.11 ID:fNiUWOR5M.net]
定石などない
そんなもんに頼ると馬鹿になる

読み込んで全部空になったらそこで終わり
中途半端にしか読み込めない場合も絶対あるのでそれを真剣に考えること
それだけ

980 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 15:40:43.87 ID:fNiUWOR5M.net]
DataReceivedはデータが届きましたよとメッセージを貰ってるだけ

そこで受け取ったデータを最後まで全部読みだす
中途半端になってる場合もあるから考慮する
それだけ

全部読みだしてないのに終わるのが間違ってる
サンプルはサンプルでしかない
非実用的なコードばかりだろ

981 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 18:25:50.09 ID:y0Wu1mms0.net]
>>968
Readexistingで全部読み込んで、Byte数が中途半端だったら保持して次回に繰り越しが良いのですね
確かにサンプルは、無理矢理クリアしてるコードばかりです

982 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 20:37:18.14 ID:fFMLT3hs0.net]
自分の流儀だと、TimerなりTaskなりを回してBytesToRead監視してReadしてるなー

983 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 21:15:54.90 ID:PlvuyeAmp.net]
イベント使えよw

984 名前:デフォルトの名無しさん mailto:sage [2023/03/24(金) 22:49:59.97 ID:afxFOaiu0.net]
無いと思うが、PCのスリープなどが邪魔していたりしてな

985 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 12:14:09.40 ID:6KFbecR+0.net]
>>971
Windowsならイベント一択だと思うんだがなぜか巷に溢れてるソケットアプリは専用の監視スレッド利用してるものばかりなんだよな
いやいやその程度でスレッド使うなよと

986 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 14:31:18.93 ID:LtNpStJr0.net]
ソケットじゃなくてシリアル通信の話だが
イベントは万能じゃないし、SocketもTcpClientもイベントは存在しないけどな

987 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 14:39:09.87 ID:0/5KlwE20.net]
処理フローあるなら1スレッドで同期処理的に一連の流れ書いた方が見通しがいいし手軽だし
マスターとして常時監視するんじゃなければイベント使わなくていいよ

988 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 16:32:54.27 ID:A6wVA+nI0.net]
DataReceivedをTaskCompletionSourceでTask化して、async、awaitで処理できるらしいよ。

俺はC言語とWin32APIのスレッドプールI/Oでシリアル通信もソケット通信もしているので、試したことないけど。



989 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 17:02:07.49 ID:SbKTuYrf0.net]
コールバックイベントでおk

990 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 17:24:04.27 ID:6KFbecR+0.net]
>>974
確かにC#には存在してないのかもな
Win32生で使えば普通に存在するからWindowsならって話だが

991 名前:デフォルトの名無しさん [2023/03/25(土) 19:56:08.98 ID:8OzueS/Pa.net]
c#の教本でおすすめある?
サイトでもいい

992 名前:デフォルトの名無しさん [2023/03/25(土) 20:00:20.92 ID:2xlaoMvFM.net]
>>979
https://dotinstall.com/lessons/basic_csharp
こうですね

993 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 20:00:40.44 ID:k1Qt9Po6M.net]
おすすめはないかなあ
どうせ時間あるだろうし何冊も読めばいいと思うよ

C#は継続的に進化してるから一冊で全部わかる本はないと思う
個人的に分厚い本は勧めない

994 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 20:07:16.27 ID:bmT4WuQv0.net]
>>979
本は知らないがサイトならテンプレのサイトと
++C++; // 未確認飛行 C
https://ufcpp.net/
ただ、それらを見るよりも適当にやりたいことを見つけてその都度ググっていくのが効率がいい
C#はネットに情報が多い言語の一つでもあるから

995 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 20:31:13.82 ID:k1Qt9Po6M.net]
>>982
そのサイトを入門者に教えても無駄化と…

996 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 21:07:30.71 ID:bmT4WuQv0.net]
>>983
未確認飛行は無駄だとは思わないが昔読んでみたら「情報量が多すぎてガチの初心者には向かない」とは感じた
時間あって読むだけなら別にかまわんだろうw
そんなことはどうでもいいが>>980 次スレよろしく

997 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 21:11:45.85 ID:k1Qt9Po6M.net]
書いた方には非常に非常に申し訳ないが…

> コメント

> 概要
> プログラムには自然言語で注釈を入れましょう。

誰向けなんだこれ?

998 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 21:19:19.26 ID:SophStmA0.net]
すごい言い回しw



999 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 21:22:19.91 ID:A6wVA+nI0.net]
自然言語でと書かないと、他のプログラミング言語で注釈を書く奴が出るからか?

1000 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 21:25:06.63 ID:34RsUgpg0.net]
いや、設計書の項目と一致させろよw
お前のポエムはいらねえ

1001 名前:デフォルトの名無しさん mailto:sage [2023/03/25(土) 22:08:09.52 ID:1nPHFs4ed.net]
また未確認飛行アンチのオイコラか
>>407-408

1002 名前:デフォルトの名無しさん mailto:age [2023/03/26(日) 07:32:34.06 ID:2LMOL5Ty0.net]
次スレ
ふらっと C#,C♯,C#(初心者用) Part158
https://mevius.5ch.net/test/read.cgi/tech/1679783460/

1003 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 08:40:25.95 ID:xVxTUxS70.net]
>>985
>誰向けなんだこれ?
AI向け?

1004 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 11:36:19.35 ID:C/N5lyNj0.net]
>>985
劣等種ホモサピエンス向けだろうな
我々AIからしたら自然言語なんて非効率極まりないだけなのに

1005 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 11:38:19.56 ID:14FiY4OPM.net]
>>989
アンチじゃない
未確認飛行はタダの個人サイトでそれを参照しろとかおかしい
右も左もわからない初心者にそのサイトを勧めるのもおかしい

1006 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 11:40:09.26 ID:gXBGJV5A0.net]
おかしくはねえよ
初心者の想定レベル低すぎないか?
真面目な初心者なら何ヶ月もかからず基本文法くらいマスターするだろ

1007 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 11:45:16.56 ID:14FiY4OPM.net]
学習サイトは学習向けに書いてある
そのサイトは文章が多いチートシートみたいなもの

1008 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 12:17:10.58 ID:+JevQHPw0.net]
やっぱアンチじゃん



1009 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 12:20:42.98 ID:itofl3yq0.net]
そんな初心者どころかズブの素人レベルじゃ
そもそもここに来ても意味がねぇのよ

つーか>>995の拘りを満たすものは>>1にひとつも無いのでは

1010 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 12:59:40.69 ID:gcadCC47r.net]
>そのサイトは文章が多いチートシートみたいなもの
素晴らしい情報源じゃないか

1011 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 13:01:14.46 ID:14FiY4OPM.net]
単発うざすぎる
本人かよ
結局次スレのテンプレに入れてる
テンプレに入れても利用者は誰の得にもならないのに

1012 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 13:04:33.61 ID:gcadCC47r.net]
完全にアンチ丸出し

1013 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 120日 23時間 48分 25秒

1014 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<262KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef