[過去ログ] ふらっと C#,C♯,C#(初心者用) Part141 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
869: 2020/10/06(火)22:21 ID:0ZJ/y4Ey(1/2)調 AAS
パラメータをPOSTしてウェブサイトのHTMLソースを取得しています。
POSTするデータが普通の配列形式の方法は以前から知っているのですが、JSON形式でPOSTするサイトに出くわしました。
いろいろなウェブサイトを見てPOST自体はエラーせずにできるようになったようなのですが、レスポンスもJSON形式のデータしか取得できずに困っています。
欲しいのはウェブサイトのHTMLソースです。
どうしたらいいでしょうか?
870
(1): 2020/10/06(火)22:21 ID:0ZJ/y4Ey(2/2)調 AAS
   var jsonParameter = new JavaScriptSerializer().Serialize(new
   {
    hoge1 = new
    {
     hoge2 = new
     {
      fuga1 = "0",
      fuga2 = "1",
     },
     hoge3 = new
     {
      fuga3="3",
     }
    }
   });

   // リクエストの作成
   HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
   req.Method = "POST";
   req.ContentType = "application/json; charset=utf-8";
   req.Accept = "application/json, text/plain, */*";

   using (var streamWriter = new StreamWriter(req.GetRequestStream()))
   {
    streamWriter.Write(jsonParameter);
   }

   var httpResponse = (HttpWebResponse)req.GetResponse();
   using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
   {
    string result = streamReader.ReadToEnd();
   }
871: 2020/10/06(火)22:26 ID:UOuIyfzj(1)調 AAS
にゅにゅにゅにゅにゅ〜
872: 2020/10/06(火)22:26 ID:3gNx1ZB7(1)調 AAS
過去ログ抜こうとしてるんかな
873: 2020/10/07(水)04:05 ID:qlNjOdYh(1)調 AAS
curl, wget でも出来る。

Windows 10 なら、C:\Windows\System32\curl.exe
が入っている。
これは、PowerShell のcurl alias とは異なる

漏れは、VSCode の拡張機能、Rest Client を使ってる
874: 2020/10/07(水)20:04 ID:mkQTgHeP(1)調 AAS
>>870
すいません解決しました。
875: 2020/10/08(木)18:41 ID:zyhORnZD(1)調 AAS
5.0始めたけど new()の出番めっちゃ多いな
varよりnew()優先にするのがいいのかな
876
(1): 2020/10/08(木)20:54 ID:toLcLUNb(1)調 AAS
Windows 10だけサポートしたいんですけど
.Netはどのバージョンからサポートしたらいいのでしょうか?
877: 2020/10/08(木)20:56 ID:Whd9Wcyu(1/2)調 AAS
5
878: 2020/10/08(木)21:05 ID:ihp2OLR0(1)調 AAS
>>876
https://docs.microsoft.com/ja-jp/dotnet/framework/get-started/system-requirements
OS と共にプレインストール済みの項目
879: 2020/10/08(木)21:22 ID:+UAfPznY(1/2)調 AAS
二つの配列A,Bがあり、Bに入っていない要素がAにある場合の処理はどのようにすればいいでしょうか?
やりたい事は、テキストファイルから一行ずつBに読み込んで格納し、なんらかの結果の配列Aとの照らし合わせを行いたいのですが、なかなか上手くいかず…
880
(1): 2020/10/08(木)21:27 ID:Whd9Wcyu(2/2)調 AAS
linq
881
(1): 2020/10/08(木)21:41 ID:GTaO2d9W(1)調 AAS
差集合Except()が直感的かな
882: 2020/10/08(木)22:34 ID:+UAfPznY(2/2)調 AAS
>>880
>>881
ありがとうございます!こちらを元に調べてみます!
883: 2020/10/09(金)11:00 ID:n+WfHqnB(1/6)調 AAS
C#で構築したORACLEを更新しているシステムがあるのですが、
入力時にタイムアウトするのを防ぐ、もしくは入力を促すような
仕組みを作るにはどうすればいいでしょうか。
884: 2020/10/09(金)11:12 ID:YM8vGnnj(1/2)調 AAS
アバウトすぎやろw
885: 2020/10/09(金)11:16 ID:n+WfHqnB(2/6)調 AAS
一般的な対策はありますか?
ユーザーに処理を放置せず、すぐ完了させてくれとかいうしかないですか?
自分はプログラマーでもないので詳しくなてすみません。
886: 2020/10/09(金)11:22 ID:zClV+H3L(1)調 AAS
入力時にタイムアウト、ってなんでそうなるの?
入力を促されていることにユーザーが気がつかないのか、ユーザーがいい加減でほっとく人が多いのか。

前者なら、
・画面以外でユーザーに入力を促す仕組みを作る
 - 決まった音を鳴らしてみる
 - メール等で通知してみる
・ユーザーの入力が遅いのであれば、入力を保存してタイムアウト後に画面を開く?などした際にも前回の入力値を復元してあげて二度手間を減らしてあげる

後者なら、
・教育する

などがあるんじゃないかと思うんだけど、エスパーはたいてい外れるので、もうちょっと状況を整理してから聞いてみるのがいいんじゃないかと。
887: 2020/10/09(金)11:32 ID:n+WfHqnB(3/6)調 AAS
ありがとうございます。
>ユーザーの入力が遅いのであれば、入力を保存して
ローカル環境に入力途中のデータを保存するようにしてもらうという意味でしょうか
888: 2020/10/09(金)12:03 ID:YM8vGnnj(2/2)調 AAS
C#関係あんの?
889
(1): 2020/10/09(金)12:14 ID:vMOSOHWg(1)調 AAS
バックグラウンドで定期的に無意味なselectクエリを発行すればいいよ
890: 2020/10/09(金)12:19 ID:a2KfB7NN(1/2)調 AAS
ヘルメット開発しろ

早く入力しないと高圧電流が流れる仕組みだ
891: 2020/10/09(金)13:26 ID:IpDZ9RMp(1/2)調 AAS
設計・実装と運用が根本的にかみ合ってない予感
892: 2020/10/09(金)13:53 ID:V1E2IEC6(1)調 AAS
- 照明を落として赤いパトランプ点灯

- SF映画で自爆装置が作動した時みたいな警報音を鳴らす

- 当然プシューという音とともにスモークを噴出させることも忘れずに
893: 2020/10/09(金)14:26 ID:8xBy2vBw(1/2)調 AAS
そもそも何がタイムアウトしてるんだ?
真面目な話はそれからだ

まあ、設計が悪いと思うけど
894: 2020/10/09(金)14:42 ID:6ktS8zpy(1/2)調 AAS
コネクション開きっぱなしでユーザーにフォーム入力求めてると予想。
895
(1): 2020/10/09(金)16:22 ID:n+WfHqnB(4/6)調 AAS
>> 894
それっぽい場合はどのように処理をすればいいのでしょうか
896: 2020/10/09(金)16:32 ID:nKkCxIzL(1)調 AAS
>>895
>>889
897
(1): 2020/10/09(金)16:32 ID:n+WfHqnB(5/6)調 AAS
1.My.settingというものに書き込んでおけば呼び出すことが出来る
2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って
画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない

1.2.のような理解で正しいでしょうか。
898: 2020/10/09(金)16:32 ID:n+WfHqnB(6/6)調 AAS
1.My.settingというものに書き込んでおけば呼び出すことが出来る
2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って
画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない

1.2.のような理解で正しいでしょうか。
899: 2020/10/09(金)16:48 ID:mOpqVRBo(1/2)調 AAS
何のタイムアウトか分からない
何でタイムアウトしてるのか分からない

この状態でどうすればいいか話しても無駄なので
まず上の2つを明らかにしないと
900: 2020/10/09(金)17:15 ID:8xBy2vBw(2/2)調 AAS
>>897
1.はとりあえず関係ない
2.は改善する可能性はある

Oracleとの接続ってコネクション開いてるだけでもタイムアウトするのか?
タイムアウトしたといってる状況とエラーメッセージとか晒せ
901: 2020/10/09(金)17:20 ID:IpDZ9RMp(2/2)調 AAS
そもそも、なんで「プログラマーじゃない」って言っている ID:n+WfHqnB が改善案を求めているのかが謎
902: 2020/10/09(金)19:01 ID:IN0CEnyU(1)調 AAS
職業的なプログラマーじゃないけどちょっとは齧ってるからやらされてるって感じじゃなのかね
903: 2020/10/09(金)19:28 ID:phKb1ah1(1)調 AAS
データベースついでに教えて欲しいんだけどさ
内蔵のSQLiteって、あれって本家のSQLiteみたいにWALを吐かせることってできないの?
904: 2020/10/09(金)20:24 ID:6ktS8zpy(2/2)調 AAS
内蔵って何の?
905: 2020/10/09(金)21:27 ID:a2KfB7NN(2/2)調 AAS
「なんか舐められてるからここらで一発英語連発しとくか」
906
(1): 2020/10/09(金)23:27 ID:760t1BpC(1)調 AAS
データベースとの接続を、したり切ったりするようなものは、見たことない。
普通、ずっと接続してる

テストでは接続を切って、始めからやり直すけど

本番環境で接続処理をやり直していたら、遅くて話にならない。
ユーザー認証とか、接続の初期化処理から始めるわけだから
907
(1): 2020/10/09(金)23:58 ID:mOpqVRBo(2/2)調 AAS
普通はコネクションプール使うから
908: 2020/10/10(土)00:44 ID:79v4aWeJ(1/2)調 AAS
>>907
それをやってないアプリケーションの可能性が高いよね
909: 2020/10/10(土)01:45 ID:0SjnNOm9(1)調 AAS
普通そこら辺アーケードゲームみたいに
カードをピッで暗所番号入力とか
銀行ATMとかもさ、入力遅かったら
カウントダウンで自動ログオフするんじゃないの?
910: 2020/10/10(土)02:21 ID:79v4aWeJ(2/2)調 AAS
どんな普通か知らんけど、
MySQLにアクセスしてテーブルの中身を表示して変更するアプリを自作したときのことを、いろいろ思い出した。
データベースのユーザーidとパスワードがあるわけだけど、それはアプリのセッティングに保存できるけど
毎回アプリ起動時に入力する。
データベースにconnectして、ユーザー操作を待つ。selectやupdateが必要になったとき、そのsql文を実行する。
connectionがある間は何度でも繰り返すことができる。
アプリ終了時にはconnectionをcloseする。
何だけど、これだとconnectionが使われない時間が長くなると、接続が切れる。タイムアウトするというやつ。
なのでバックグラウンドでconnectionを維持する(もしタイムアウトしたら、次に必要な時に自動でopenするとか、タイムアウトしないように、ダミーで何かする)ライブラリ機能が大抵はある。
これをコネクションプールと言う。
件のアプリは、そのあたりに問題を抱えているのではないか。
最初からコネクションプールがうまく使えていないのか、データベースかライブラリのバージョンアップでタイムアウトの設定が変わったのか
911: 2020/10/10(土)03:04 ID:PieQlTcj(1/2)調 AAS
コネクションプーリングはタイムアウト対策じゃねえよ
912: 2020/10/10(土)03:08 ID:PieQlTcj(2/2)調 AAS
オープンしただけのアイドル状態のコネクションがタイムアウトするならプーリング関係ない
プールに戻さないでタイムアウトするんだからな

まず何がタイムアウトしてるのかはっきりさせんと話にならん
まあどうせトランザクション開始してからユーザ入力待ってるんだろうけど
913: 2020/10/10(土)03:34 ID:BjcbKuib(1)調 AAS
コネクションプールは、大量のアクセスに対して、事前に起動しておくもの

それで接続が速くなる
914: 2020/10/10(土)09:37 ID:zxwCdOcf(1)調 AAS
普通のWebアプリはリクエスト/レスポンスのたびに毎回コネクションopen/closeしてる

タイムアウトの件とは関係ないがコネクションプーリングは
DBサーバーを使う場合の基本なのでちゃんと押さえておいたほうがいいyo
915: 2020/10/10(土)10:02 ID:OrgjdyW8(1)調 AAS
いや、マジでいつまでスレチ続けんの
916: 2020/10/10(土)12:55 ID:bjtm+bd1(1)調 AAS
話題もプールされているんだ
917: 2020/10/10(土)16:50 ID:i5KfYhU+(1)調 AAS
>>906
918: 2020/10/11(日)11:18 ID:nehM9hsi(1)調 AAS
try~catch~finallyで質問です。
finallyを使うケース教えて下さい。
919: 2020/10/11(日)11:27 ID:ErUdhCxH(1)調 AAS
プログラム板のスレッドの中で記述されていて
catchブロックの中でreturn文などにより処理が
スレッドの呼び出し元へ戻ってしまう場合には
try文の次に記述されたレスは実行されません。
finallyブロックを使った場合はcatchブロックの中でreturn文などが実行された場合でも必ず実行されます。
(ただしSystem.exit(0)によってプログラムが終了した場合を除きます)。
920
(2): 2020/10/11(日)11:53 ID:mzj9OHDg(1)調 AAS
finallyを使った記憶がないな
IDisposableを正しく実装してusingするのがC#流
921: 2020/10/11(日)11:56 ID:2hFwVXKf(1)調 AAS
>>920
歪んだ初心者だな
922: 2020/10/11(日)16:21 ID:SD6h9HSf(1)調 AAS
async/awaitで排他制御やる時にSemaphoreを使うけど、開放する時にfinally使うのが一般的
923: 2020/10/12(月)01:01 ID:S+m0Jln7(1)調 AAS
必要だから実装されているのでは
924: 2020/10/12(月)09:32 ID:941JO02h(1)調 AAS
>>920 は間違ってはいないだろ
偏ってるかも知れないが

using は構文糖衣
925: 2020/10/12(月)16:12 ID:2Z4zotkW(1)調 AAS
usingっていまいち分かってないんだけど、例外が起きたときにも破棄されるの?
926: 2020/10/12(月)16:26 ID:sR+xz/oc(1)調 AAS
されるよ、むしろそのため
927: 2020/10/12(月)18:48 ID:8cHhoAHg(1)調 AAS
using変数宣言とref structで無駄なヒープ確保をせずにDisposeを呼べるようになったのは良いね
ネイティブ周りで重宝する
928
(1): 2020/10/13(火)16:23 ID:401SSeVR(1/3)調 AAS
ASP.Net Coreで使用しているデータベースを、他の種類のデータベースに移行する手段があれば教えてください
具体的には、SQLServer Expressから月500円の激安マネージドMariaDBに乗り換えたいんです
929: 2020/10/13(火)16:48 ID:mavYzj73(1)調 AAS
あるよ。
930: 2020/10/13(火)16:50 ID:XwYEVn5U(1)調 AAS
>>928
やれるかどうかじゃない
やるかどうかだ
931: 2020/10/13(火)17:00 ID:cMrfgH2T(1)調 AAS
月500円の激安マネージドMariaDBに問い合わせろ
932: 2020/10/13(火)17:16 ID:401SSeVR(2/3)調 AAS
MariaDBで動かして見て、どんな感じのテーブルが作られるか自分で確認して、手動で移行するしかないのかな?
933: 2020/10/13(火)17:33 ID:qH5Vi/SO(1/2)調 AAS
こんな質問するような馬鹿には無理では?
934: 2020/10/13(火)17:45 ID:/Rq/oe7M(1)調 AAS
EFとか使ってれば差異はある程度吸収してくれるけど、
生SQLベッタベタに書いてたら厳しいだろうな
935: 2020/10/13(火)19:34 ID:RxzDulGv(1)調 AAS
SQLiteでええやん
936: 2020/10/13(火)19:57 ID:qH5Vi/SO(2/2)調 AAS
↑追加の馬鹿が来た
937: 2020/10/13(火)22:03 ID:401SSeVR(3/3)調 AAS
まあ無理そうだけど、どうやるんかな
なんか手段が用意されてないんだったら難しいわ
938: 2020/10/14(水)00:03 ID:uO7Ua6+h(1)調 AAS
あまりに頭が悪そうでコメントすると泥沼化しそう
こんなの雇ってるクソ会社あるのか
939: 2020/10/14(水)00:08 ID:NlzTC5au(1)調 AAS
頭悪い奴「頭が悪そう」
940: 2020/10/14(水)00:48 ID:BYmezqa4(1)調 AAS
結論はこれ
「馬鹿には無理」
941: 2020/10/14(水)01:51 ID:ZvC0XGAE(1)調 AAS
そのソフトはデータベースを変更できるように作られているのだろうか
多分なってないのでソースコードレベルで変更が必要なのではないだろうか
942
(1): 2020/10/14(水)05:50 ID:z5Uy/Vd3(1/2)調 AAS
Ruby on Rails では、sqlite, postgresql, mysql の3大DB を、
単一のRuby ファイルで定義できる

それを実行したら、各DB の型に合わせて、表が作られる。
表の型などを抽象化してる
943: 2020/10/14(水)07:38 ID:MAVLXRyI(1/2)調 AAS
それだと最大公約数になるからDBのポテンシャルを発揮できない
944
(1): 2020/10/14(水)07:42 ID:ntkkf+xd(1)調 AAS
なんで突然ruby?
945: 942 2020/10/14(水)08:08 ID:z5Uy/Vd3(2/2)調 AAS
その代わり、個別のDB の特別な機能を使うと、可搬性が無くなる

どちらを選ぶか、難しい
946
(1): 2020/10/14(水)15:55 ID:/YzYSvC9(1)調 AAS
>>944
別言語だけど Railsでは、そういう実装になってて
C#でも同様の実装になっていればデータベースを替えるのも簡単

という話だとおもうけど、そのアプリがMS SQL ServerとMariaDBと
どっちでも動作するようになっているのなら、インストールし直せば
OKなんじゃないかな
947: 2020/10/14(水)16:06 ID:xu8Uupog(1)調 AAS
このruby荒らしは実際に使ったこともないただの頭の悪い人とバレたな
948: 2020/10/14(水)16:56 ID:PQeg+6lO(1)調 AAS
>>946
インストールし直せばってなんじゃい

ORM使ってDBMSに依存したSQLを書いてなければ
設定変更でアプリの修正は終わるって話
それはRails(ActiveRecord)でもEF Coreでも同じ

データ移行は別途必要
949: 2020/10/14(水)18:54 ID:MAVLXRyI(2/2)調 AAS
将来的にやるかどうかもわからないRDB移行を楽にするためのものというよりは
システム管理者がバックエンドのストレージを選べるメリットのほうが価値としては大きい
950: 2020/10/15(木)00:54 ID:VyNwlTHB(1)調 AAS
ああ、あのrubyの変な人だったのか
951: 2020/10/15(木)19:28 ID:WZPJX9UA(1)調 AAS
NGワード:uby
952: 2020/10/15(木)21:16 ID:j3TfrCLP(1)調 AAS
ぅゅ……
953
(3): 2020/10/16(金)02:23 ID:kSQNYYOM(1/4)調 AAS
using System;

namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
int[,] ma = new int[,] { { 1, 2, 3 }, { 4, 5, 6 } };
int[,] mb = new int[,] { { 6, 3, 4 }, { 5, 1, 2 } };
int[,] mc = new int[2, 3];

for (int i = 0; i < 2; i++)
{
for (int j = 0; i < 3; j++)
mc[i, j] = ma[i, j] + mb[i, j];
}
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
Console.Write(string.Format("{000}", mc[i, j]));
}
}
}
}
System.IndexOutOfRangeException: 'Index was outside the bounds of the array.'
というエラーが起きます
配列のレンジをはみ出してはいないと思うのですが、どう直したらいいんでしょうか
954: 2020/10/16(金)02:39 ID:YCT/0knJ(1)調 AAS
2番目のforの条件式がjじゃなくてiになってるよ
955: 2020/10/16(金)02:44 ID:SmZ3YqvD(1/2)調 AAS
添字はこの手の問題が頻発するからなあ
956: 2020/10/16(金)02:45 ID:SmZ3YqvD(2/2)調 AAS
C#なんだから型使えばいいのに
957
(1): 953 2020/10/16(金)02:52 ID:kSQNYYOM(2/4)調 AAS
ありがとうございました..
全然気づかなかったです
勉強法がわからないんで手持ちのC言語の参考書の例題をC#で一つづつ書き直してるところです
958: 2020/10/16(金)03:04 ID:mkv3kCzf(1/2)調 AAS
>>953
iとjの間違いじゃ?
×for (int j = 0; i < 3; j++)
○for (int j = 0; j < 3; j++)
やりたい事と合ってるかどうか知らんが
Console.Write(string.Format("{000}", mc[i, j]));

757968で、エラーなしで出力されます。
959: 2020/10/16(金)03:10 ID:mkv3kCzf(2/2)調 AAS
実行確認してたら亀レスだったorz
CとC#は別物では?新しく買い直した方が良いのでは?
960: 2020/10/16(金)03:15 ID:rCAM8r34(1)調 AAS
>>953
linqなら1ステップで行けそうだな。
ビバLINQ
961
(1): 2020/10/16(金)03:17 ID:I/ihOPsA(1)調 AAS
>>957
vs使ってないの?エラーの箇所すぐわかるじゃん
962
(2): 2020/10/16(金)03:21 ID:kSQNYYOM(3/4)調 AAS
新・標準プログラマーズライブラリ なるほどなっとく C#入門
この本注文したんですがプライムデーで混んでるのか全然届かなくて。

年内にある程度使えるようになりたい
963: 2020/10/16(金)03:22 ID:kSQNYYOM(4/4)調 AAS
>>961
今回エラーが出なかったんですよ
実行中に例外で止まるんですが止まる行が
mc[i, j] = ma[i, j] + mb[i, j];
の行でした
964
(1): 2020/10/17(土)19:12 ID:PP8bTAlg(1)調 AAS
馬鹿には無理な例だな
965
(1): 2020/10/17(土)21:07 ID:9iD8hqCl(1)調 AAS
>>964
馬鹿じゃないお前はRuby使ってろ
馬鹿
966: 2020/10/17(土)23:10 ID:hr8QrpsO(1)調 AAS
>>965
ID:kSQNYYOMの馬鹿さ加減がわからない馬鹿
967: 2020/10/17(土)23:47 ID:5+/OiZrO(1)調 AAS
>>962
本を読むよりDOBON.NETを読んだりしながら適当なツール自分で作った方が上達は早いぞ
そして掲示板で聞く前にVSのデバッガを使いこなしたり自分で何でもググって調べる癖をつけるようにした方がいい
ネットで質問するのはググって5分で見つかることを回答してもらうまでずっと待つということだから効率が悪すぎる
968: 2020/10/18(日)00:21 ID:Oa0gZ2cf(1)調 AAS
俺は本「も」読むのがいいと思う
ネットの情報でつまみ食いばかりしてると
流れが身につかなくて何も作れないままってなる鈍臭いやつもいるから

そうでない才気あふれる人間なら何やっててもすごくなるけど
1-
あと 34 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.153s*