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

■ このスレッドは過去ログ倉庫に格納されています
2021/08/25(水) 19:44:16.81ID:tgvUkE6r0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

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

■前スレ
ふらっと C#,C♯,C#(初心者用) Part151
https://mevius.5ch.net/test/read.cgi/tech/1621129559/
■関連スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
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/
・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
2021/11/27(土) 12:13:46.60ID:kX7QbhiL0
xamlは手書きが楽で良いよな。Formsのdesigner.csは人が触るもんじゃなかったし。
2021/11/27(土) 12:25:44.24ID:Zh9GgFO40
それは単に
XAMLはデザイナがクソなのでは?
2021/11/27(土) 12:39:12.25ID:y6aTFMu6M
条件分岐したいだけなのにデータトリガーとかテンプレートセレクターとか書かされるのはキツかった
二度とやりたくない
2021/11/27(土) 12:51:58.50ID:kX7QbhiL0
>>784
XAMLに限らないデザイナ一般の話。
いちいちGUIでちまちまやるよりテキストエディタの方が楽なことも多い。
2021/11/27(土) 12:56:17.64ID:1K/bt2mK0
そんなの想像もつかねーな!!!
2021/11/27(土) 13:30:09.59ID:tTgWIdmh0
ぶっちゃけXAMLじゃなくて、JSフレームワークみたいにほぼHTMLで良かったのでは?とはたまに思う
もしくは振り切ってあのホームページビルダみたいに・・
2021/11/27(土) 14:03:43.25ID:1K/bt2mK0
オブジェクト思考に反するよな。
インターフェースの使い方さえ分かりやすければ内部の実装なんてどうでもいい。
内部を自分で弄ることか前提のフレームワークなんて流行らないよ。
2021/11/27(土) 17:58:09.44ID:QNhwUt810
>>780
WindowsアプリはDirect2D直描画が手っ取り早くて好き
2021/11/27(土) 20:07:13.99ID:sqiNT/JOd
>>790
入力BOX作るの本当に手っ取り早いか?
2021/11/27(土) 20:17:59.66ID:9VTgh3sM0
WPFは適当なメッセージボックス作るのですらWeb見ないといけないのは酷すぎるわ
2021/11/27(土) 20:26:37.55ID:ISXjPYyUd
>>792
使ったことないフレームワーク使うならなんでも最初はそうだろ
794デフォルトの名無しさん (ワッチョイ b710-cp6m)
垢版 |
2021/11/27(土) 21:38:36.54ID:vNEPDJXe0
ここで文句言ってるやつが作ったWPFのアプリみてみたいわw
2021/11/27(土) 21:40:32.73ID:w2+KtZN60
文句言っている奴はそもそもWPF使ってないんだろう
2021/11/27(土) 21:46:27.61ID:1K/bt2mK0
VB6、Delphi触ってればwinformは入門書すら読まんでも移行できる。
Excel覚えれば他のWindowsアプリはみなヘルプすら読まないのと同じ。

しかしWPFは明らかに毛色が違う。前時代的、古典的なUNIX文化を持ち込みすぎ。
2021/11/27(土) 21:53:05.65ID:mNCXvF6fd
>>796
XAMLやMVVMがUNIX文化なの?
2021/11/28(日) 21:38:47.37ID:3wuNZOM40
ツールとかデータ処理ぐらいにしか使ってないからWPFなんて使う事ないんだよなぁ
出た当初(もう10年以上も前)少し試しに作ってみたけどめんどくさいだけw
結局、見た目とかどうでもいいようなアプリでWPFにする理由が全く無いという結論に
WinFormsより作りやすいものいい加減作れよwって思う
799デフォルトの名無しさん (ワッチョイ 1fbd-E3e6)
垢版 |
2021/11/28(日) 21:47:54.57ID:nPvqCxTT0
幅500長さ900固定のpictureboxに表示する図形倍率について質問です。表示図形幅長の中に大小様々な丸や四角等の図形があります。

@pbox四周50の余白を設ける。最大図形表示幅400長さ800。
A最大幅長さ以内はpbox中心とした位置へ描画
B最大を超える場合は幅長の比率計算して縮小表示

ここまでは行けたのですが当たり前ですがAの場合はいい感じで表示出来て納得なんですが、Bの場合だと図形幅長さが大きすぎると縮小によって格好悪いのですがいい方法等ありませんか?
出来るか分かりませんが、そのままの大きさで描画してスクロールバーとか、マウスで拡大縮小とかですかね?何が参考になるサイト等あれば教えて頂きたいです。
2021/11/28(日) 21:56:56.55ID:V9ym8M+ur
何言ってるのかんからんからスクショなり図なりで示してみたら?
2021/11/28(日) 21:57:24.04ID:V9ym8M+ur
んからんから

わからんから
2021/11/28(日) 21:58:27.52ID:5dBNAjGC0
>>799
スクロールバーを付けて画像を表示する
https://dobon.net/vb/dotnet/graphics/scrollimage.html#section1
803デフォルトの名無しさん (ワッチョイ 9f79-TeYZ)
垢版 |
2021/11/28(日) 22:42:52.70ID:fetzwBgk0
C#ってなにで勉強するのが効率良いの?参考書?
2021/11/28(日) 22:48:18.27ID:QHerQIRk0
結局何か作るのが一番効率良いんだわ
作る過程でわからんことググって学ぶ
805デフォルトの名無しさん (ワッチョイ 9f79-TeYZ)
垢版 |
2021/11/28(日) 23:08:22.34ID:fetzwBgk0
サンキュー!
でも文法くらいは勉強しといた方がいいんじゃないの?
2021/11/28(日) 23:10:25.10ID:+ZppHvH90
知らないせいで車輪の再発明何度もすることあるしね
C#の参考書に良書と言えるのがなかなかない気はする
2021/11/28(日) 23:11:57.25ID:5dBNAjGC0
>>805
個人的に「文法って何?」ってレベルだけどググりながら調べてアプリいくつも作ってる
人に教えたいとかならそういう勉強したらいいけど、それ以外なら不要
2021/11/28(日) 23:29:11.96ID:QHerQIRk0
文法もvsがインテリセンスで教えてくれるし、どこにどんなデータが詰まってるかもデバッグで覗けば推測できる
vsのおかげでテキストで調べる時間が地味に短縮できる
809デフォルトの名無しさん (アウアウウー Sa5b-UL9W)
垢版 |
2021/11/28(日) 23:46:58.95ID:rti4oQQSa
昔formアプリ作るときにc#でやろうとしてイディオムがなんちゃらみたいなの本はお世話になった気がする
2021/11/29(月) 01:24:04.95ID:leVTYOqkd
>>806
車輪の再発明は(コーディングの)勉強中なら良いと思うけどね。
いざ物を造るって時にはやっぱり数多あるライブラリをどう使うかがコスト削減につながるから、欲しいものを見つける力、利用する力ってのは必要だけど
2021/11/29(月) 07:53:47.43ID:nkF9doEfM
>>803
軽く目を通すべ
http://www.kumei.ne.jp/c_lang/index_cs.html
2021/11/29(月) 11:16:06.45ID:BRD3cVdW0
>>810
ライブラリ程度ならまだしも、
極端な話でいえば条件分岐のelseを知らないから全部ifで書くって事が起こりうる
だから子細とは言わないまでも全容を把握する必要はあるってこと
2021/11/29(月) 12:14:41.39ID:HZy6GzpY0
elseなんて害でしかないけどな。
2021/11/29(月) 13:49:48.73ID:h6SrhnyS0
ビットマップ消去埋めで
pen.Color = Color.FromArgb(0, 0, 0, 0);
gr.FillRectangle(pen.Brush, 0, 0, 200, 100);
こうすると透明色は何も描画されません(Javaの場合は透明色で消されます)

pen.Color = Color.Black;
こうすると透明でない黒で消去されます
Javaのように透明色で消すにはどうすればよいですか?
2021/11/29(月) 14:18:42.70ID:692Uu7Kx0
>>814
gr.FillRectangle(new SolidBrush(Color.FromArgb(0, 0, 0, 0)));
でもだめかい?
2021/11/29(月) 14:19:42.44ID:692Uu7Kx0
>>815
gr.FillRectangle(new SolidBrush(Color.FromArgb(0, 0, 0, 0)), 0, 0, 200, 100);
だった
2021/11/29(月) 14:26:25.88ID:fU6A/Nzl0
同じ結果のようです
2021/11/29(月) 14:33:18.46ID:692Uu7Kx0
>>817
これだな
http://bbs.wankuma.com/index.cgi?mode=al2&;namber=37839&KLOG=65
2021/11/29(月) 14:34:38.77ID:692Uu7Kx0
リンクおかしかった
http://bbs.wankuma.com/index.cgi?mode=al2&;namber=37839&KLOG=65
2021/11/29(月) 14:36:41.83ID:692Uu7Kx0
EdgeからURL貼り付けると&のあとに;が入るな
;を抜いたURLです。
2021/11/29(月) 15:15:14.82ID:fU6A/Nzl0
一応できました 他の事象もでましたが
ありがとうございます
2021/11/29(月) 15:43:55.34ID:eIWrHApta
>>819
これがGraphicsのプロパティーなのは何か間違ってる気がする

まあすべての描画メソッドにいちいちこのオプションを指定する
オーバーロードを実装させるのは煩雑だって判断なんだろうけど
2021/11/29(月) 16:34:12.32ID:/HK8Z1xK0
実はこのあとに次の文字描画が続くのですが
gr.DrawString("ABC", font, pen.Brush, x, y);
一度これをしてしまうと
gr.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceCopy;

後でSourceOverに戻してもgr.Dispose();して新規作成しても
DrawStringが例外発生して文字が描画できないのです
これの原因がわかりません
2021/11/29(月) 17:42:32.66ID:daOVtdvf0
雑に作っただけだと再現しないねえ
GraphicsのSaveとRestore使ってみるとかどう?

var bmp = new Bitmap(128, 32, PixelFormat.Format32bppArgb);
var f = new Form() { BackgroundImage = bmp };
f.Click += (s, e) => {
var now = (int)DateTime.Now.Ticks;
using (var brush = new SolidBrush(Color.FromArgb((now >> 16) & 0xff, (now >> 8) & 0xff, now & 0xff)))
using (var g = Graphics.FromImage(bmp)) {
g.Clear(Color.Red);
g.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceCopy;
g.FillRectangle(Brushes.Transparent, new Rectangle(32, 8, 64, 16));
g.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceOver;
g.DrawString("あいうえお", new Font("メイリオ", 12f), brush, 0, 0);
}
f.Invalidate();
};
Application.Run(f);
2021/11/29(月) 17:54:00.35ID:/HK8Z1xK0
手数かけて頂いてありがとうございます
今丁度SaveとRestore使っていました
なんとか解決できたようです
ありがとうございます
2021/11/29(月) 23:14:42.20ID:Vvd11AJl0
初めてC#でTaskを触りましたが、分からないことがあるため知っていたら教えてください。
ボタンをクリックしたイベント(1階層目)から3階層下の関数内でTask.Runをして4階層目の関数を実行して3階層目にawaitを付けました。
3階層目の関数は待っているのですが、2、1階層の関数は待たずに進んでしまいました。
原因分かる方いらっしゃいませんか?
イメージとしては↓の感じです。
void btnClick()
→void test1(←進んでしまう)
→→void test2(←進んでしまう)
→→→void test3(←ここでtest4をawait)
→→→→void test4
2021/11/29(月) 23:18:35.41ID:daOVtdvf0
voidなメソッドはawaitできない
test1からtest4まで全部Task返すようにしてそれぞれawaitして
2021/11/29(月) 23:25:00.09ID:6/yij7hO0
これがasync汚染か
2021/11/30(火) 00:27:25.41ID:LFRa8U690
そういう時はtest1〜4を全部同期メソッドにして
await Task.Run(()=>test1());
に変更する
2021/11/30(火) 05:27:43.45ID:YI8pY0990
ありがとうございます。
そうだったのですね、知らなかったです。
btnClickもtest4の処理が終わるまで後続処理はしないようにしたいので、btnClickまでreturn task?するようにしてみます。
2021/11/30(火) 11:13:24.34ID:46JZSEzy0
タイマー定期処理を行いたいです
public Form1()のところで timer = new Timer();〜Interval〜EventHandler(Timer_Tick);の記述をしています
Timer_Tickの中でInvalidate();がありOnPaintで画面の更新描画がされるようにしています
Form1上のボタンを押すとtimer.Start();の記述があり
for(x++){}のループの中でビットマップへ線の連続描画がされるようにしています
予想では線が右にずれながら描画される姿が連続的に見えると思ってたのですが
forが終わるまで真っ暗で全部描き終わってから最後に描画の全貌が表示されてしまいます
forループで描画中はTimer_Tickが呼ばれてないようです
ループ中も定期で呼ばれるようにするにはどうすればよいでしょうか?
2021/11/30(火) 11:21:49.74ID:46JZSEzy0
forの中というか実際はもっといろいろな処理が入っていて
全体が終わるまでは数秒かかるかんじになってます
Console.WriteLine("Timer_Tick呼ばれた"); でチェックしたのですがTimer_Tickは呼ばれてないようです
2021/11/30(火) 12:27:33.83ID:qX5mLnYT0
>>832
forループを別スレッドか非同期処理に入れる
2021/11/30(火) 13:53:17.77ID:c6SfutN/a
>>831
タイマーのイベントハンドラを実行するのはちっさいおじさん(UIスレッド)
の仕事なので、当然のことながらちっさいおじさんが別の仕事をしている
時には呼ばれない。

ちっさいおじさんは別の仕事(forのビジーループ)にかかりきりで忙しい。
だからTimer_Tickは実行されない。
2021/11/30(火) 14:10:35.52ID:+pE1HCGZ0
タイマーは複数種あるんですね
System.Timers.Timerのタイマーでなんとか解決できましたm(_ _)m
2021/11/30(火) 14:33:06.41ID:nsEaThE+r
ゴミ言語
837デフォルトの名無しさん (ワッチョイ ffbb-Z91i)
垢版 |
2021/11/30(火) 14:58:37.89ID:OTX12hhF0
>>835
どっち道、UIスレッド上でfor文がループしてる途中なんだろ?
そのタイマーからUIを書き換えるのは、たまたまその時は動いていてもまずいだろう・・・・
C#の言語自体なんて出来ても何にもなんないんだし、先に情報科学の基礎を固めた方がいいんじゃないの
2021/11/30(火) 15:58:44.14ID:ARnSQzz0r
ウンコ言語、async/waitでUIなんて作ってるwww
2021/11/30(火) 16:26:44.72ID:2niMnZWKd
>>837
C#できてもなんにも何にもなんないってどういうこと?
2021/12/01(水) 08:49:58.20ID:5XL66mYQa
>>838
C+SDKじいさん乙!
2021/12/01(水) 12:12:03.66ID:GG/I4Skr0
ちょっと待って!>>837がいい事言った
>先に情報科学の基礎を固めた方がいいんじゃないの
2021/12/01(水) 12:58:21.55ID:OSLu0EtY0
UIスレッドの使い分けってどんなサイトで勉強すればいいの?
2021/12/01(水) 13:02:10.03ID:R9kNDfRh0
できるふりしてソフトウェア開発部門へ就職し、
業務利用されるソフトを作るのが一番の近道

はっきりいって独学じゃムリ
844デフォルトの名無しさん (アウアウウー Sa5b-UL9W)
垢版 |
2021/12/01(水) 21:53:31.39ID:d+Yo+uULa
使い分けも何もUIのメインスレッドだけで処理してたら具合悪いとなれば別スレッドでやるしかないんじゃ?
普通に調べればinvokeやらなんやら色々出てくるでしょ
適当に調べて自分でデバッグしてみれば最適解見つかると思うけど
845デフォルトの名無しさん (ワッチョイ bfe9-3PcT)
垢版 |
2021/12/01(水) 21:53:49.92ID:kCj+gN+70
Excelから実行ファイルを起動するとカレントディレクトリが起動したExcel基準になるようです
実行ファイルを直接動かすとカレントディレクトリが実行ファイル基準になるので困ってます
世間様ではどのように解決してるのでしょうか
2021/12/01(水) 21:58:15.63ID:K43krm2i0
>>845
どこがカレントディレクトリだろうが動くようにプログラミングする
847デフォルトの名無しさん (ワッチョイ bfe9-3PcT)
垢版 |
2021/12/01(水) 22:43:33.38ID:kCj+gN+70
>>846
そうしたいですが
コンフィグでパス指定すると移動した時に動かなくなったりするんで何が良いのか悩んでます
2021/12/01(水) 22:54:45.65ID:K43krm2i0
>>847
コンフィグにはカレントディレクトリからの相対パスを記述しているのかな。
だとするとexeのあるディレクトリのパスとコンフィグにある相対パスを結合させた絶対パスを使うんだよ。
2021/12/02(木) 01:45:33.06ID:Cd8C69Nla
っていうか今時そんな四半世紀前のスタイルを使ってる人がいるんだねw
2021/12/02(木) 01:53:55.42ID:Z/KKuSnhd
>>849
コンフィグってconfig.sysのことと思ってる?
2021/12/02(木) 02:22:27.63ID:Cd8C69Nla
appのことでしょ
いや時代錯誤だなと感じるのは「カレントディレクトリ」という概念。
そんなものにわざわざ依存する必要ってあります?
どこにもないよね。
2021/12/02(木) 03:41:52.86ID:tCUN1pkY0
まあまあ、
exe のディレクトリ==カレントディレクトリ
前提でコーディングするって初心者あるあるだからそうやって馬鹿にするなよ
2021/12/02(木) 06:53:06.04ID:BMgfYVOUM
>>852
> exe のディレクトリ==カレントディレクトリ
これ Excel あるあるなんだけど…
初心者あるあるとか言ってるお前が一番馬鹿w
854デフォルトの名無しさん (ワッチョイ 5701-3PcT)
垢版 |
2021/12/02(木) 07:18:07.12ID:HY05Xx580
ExcelのVBAと連携する小さいシステムなので伝統的なカレントディレクトリ使ってるんです
Excelと実行ファイルを同じフォルダに入れれば解決なのでしょうが実行ファイルのライブラリが多いのでExcelが埋もれて見難いなとそれはそれで困り
2021/12/02(木) 07:27:14.41ID:YVKX2AcGM
pushd popd は?
2021/12/02(木) 11:49:27.62ID:7dnZygEt0
namespace System.Collections.Generic
{

public class List<T> : ICollection<T>,…の中にある、
public void Add(T item);の具体的な処理(リストの最後に加える)はどこに書いてあるのでしょうか?
2021/12/02(木) 12:19:20.09ID:c3Ghpzze0
.NET Frameworkならmscorlib.dll, .NET 5以降ならSystem.Collections.dllの中
ソースコード見たいなら
.NET Frameworkのはreferencesource.com
.NETのはgithubのdotnet/runtime
2021/12/02(木) 12:58:34.73ID:07tMJNiS0
>>854
VBAからexe起動する際にそのexeにとってのカレントディレクトリを指定する
exeに渡す引数じゃなくて、exeの実行環境としてね
2021/12/02(木) 15:25:00.14ID:HUSWEurn0
>>854
ExcelをC#のライブラリとして使う方向にしたら?
普通はそうする
2021/12/02(木) 16:02:12.03ID:B97F3cDod
VSTOでExcelの拡張をC#で書いてしまえば
2021/12/02(木) 18:17:26.30ID:7pZIqj+v0
>>845
そもそも論としてWindowsではカレントディレクトリの扱いが環境として定義
されるようになっているので、プログラミングしてアプリを作るときにカレント
ディレクトリっていう使い方をするならば自分で必要な設定を行えば良いんだよ

まぁお約束(嫌いな人ゴメンねw)でdobonだけど

https://dobon.net/vb/dotnet/file/currentdirectory.html
2021/12/02(木) 19:13:04.88ID:IM4axE/K0
dobonいいじゃん
俺の量産するコードの半分はdobonのコピペだ
2021/12/02(木) 20:21:44.09ID:2Y5uTKRe0
Excel VBAからどうやってEXE起動してるのかしらんが
必要ならカレントディレクトリ変えればいいだけじゃないのか
2021/12/02(木) 21:56:32.95ID:7dnZygEt0
>>857
ありがとうございます。問題が解決しました。
次に湧いてくる疑問なのですが、

Visual StudioでList<T>を右クリックして、「定義へ移動」をすると。下のように書かれています。

//
// 概要:
// Adds an object to the end of the System.Collections.Generic.List`1.
//
// パラメーター:
// item:
// The object to be added to the end of the System.Collections.Generic.List`1. The
// value can be null for reference types.
public void Add(T item);

初心者としてはreferencesource.comにあるように↓こう書かれていたらわかるのですが

public void Add(T item) {
if (_size == _items.Length) EnsureCapacity(_size + 1);
_items[_size++] = item;
_version++;
}

なぜこれで動くのでしょうか? そしてどうして下のように処理を書いてないのでしょうか?
2021/12/03(金) 00:14:41.65ID:QhpimBIa0
> なぜこれで動くのでしょうか?
mscorlib.dllの中にコンパイル済みのが入ってるから
> そしてどうして下のように処理を書いてないのでしょうか?
コンパイル済みのしか入ってなくてソースがないから
2021/12/03(金) 00:52:15.83ID:z+zUeQIZ0
ILSpy使えばmscorelibも含めてC#に逆アセンブルしたソースコードを直接確認できるよ
2021/12/03(金) 20:46:41.26ID:9rfUUeSM0
>>865
ありがとうございました。スッキリしました。
なるほど、こんな感じで動いているのですね。

>>866
ILSpyを使ってみました。これは便利そうですね。
すごく勉強になりました、ありがとうございます。
2021/12/04(土) 09:48:16.38ID:+8uP6ahU0
VCLは偉大だった
2021/12/04(土) 12:39:42.98ID:3AJK8KN00
利用者は尊大だった
2021/12/04(土) 15:21:42.70ID:iCwoSy6wa
逮捕者は日大だっあ
2021/12/04(土) 19:18:15.48ID:RmSrjW3jM
5chが高齢化してきてこんな感じでレベルの低い無駄なレスが増えてってる
2021/12/04(土) 20:11:05.81ID:grkGode/0
S/N比は昔からたいして変わってないだろ
昔の方が良かったなんてのはそれこそ年寄りの繰り言だ
2021/12/04(土) 20:14:22.47ID:KZXGnJ6pM
> 5chが高齢化してきてこんな感じでレベルの低い無駄なレスが増えてってる
>>871 のことだなw
2021/12/04(土) 20:40:20.96ID:RmSrjW3jM
年を取り感受性が低下して正常な感性が失われて昔も変わらないと言う
ジジイのダジャレを垂れ流すスレではないぞここはw
2021/12/04(土) 20:45:50.00ID:grkGode/0
>>874
お前のクソレスがダジャレ並だと言ってるんだよ
まぁ俺のもだがな
2021/12/05(日) 00:05:53.41ID:nyTfINJm0
ダジャレを言うのは誰じゃ
2021/12/05(日) 05:39:51.38ID:xWrtzU7s0
>>870
これは最高につまんない
878デフォルトの名無しさん (ワッチョイ ce89-PP5C)
垢版 |
2021/12/05(日) 19:03:31.29ID:a+muEo/d0
ASP.net MVC 3.1を触り始めたんだが、これ、どんな些細な変更もいちいち発行しないと見れないのかな?
いままでのように「IIS Expressをプロジェクトのディレクトリ指定して起動しておいて、ビューは変更した都度リロード、ロジック変えたらビルドして確認」なんて気楽な開発が出来なくなってかなり面倒……
2021/12/05(日) 19:37:11.95ID:nyTfINJm0
実行時にコンパイルしてくれる設定はあったはず
2021/12/05(日) 20:22:19.92ID:c+AK18I70
ほっとりろーど
2021/12/06(月) 10:28:43.40ID:88ozVNfm0
>>879-880
ああ、なるほど。ASP.net MVC 3.1(というか、VisualStudio2019や2022)では、【デバッグしながら】ソースをいじって、それをすぐにブラウザで見れるんだ。
chtmlは今までも出来たけど、コードビハインド(と今は呼ばないかもしれないが)の変更も可能になってて、それを反映する「コード変更を適用」なんてボタンもVSに追加されてるんですな…。
これなら確かにわざわざIIS Expressを別に起動する手間は必要ありませんね。
例外が出た時にコマンドプロンプトからも確認できなくなったのがちょっと不便になったが、これも仕事で書くまともなコードならNLogなりを入れている筈だし。

アドバイスに感謝。いやはや、便利になったモノですなぁ…
882デフォルトの名無しさん (ワッチョイ 56bd-QDcv)
垢版 |
2021/12/06(月) 20:25:20.35ID:kcw1evd50
文字と数値が入り混じるリストのソート掛けが分かりません。

[0]丸/B/30/40/B/60/0
[1]丸/B/70/20/B/20/0
[2]丸/B/30/5/B/60/0
[3]角/B/70/20/B/20/40
[4]丸/B/30/40/B/60/0
[5]角/B/20/20/B/20/100

1番左の丸、角等の文字でまとめ、
[0]の40の位置の数値を昇順、
[0]の30位置の数値の昇順に並び替えたいです。
丸角の順番はまとまってれば良くて、数値は小数点ありです。

どなたかコードを、教えて頂きたいです。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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