ふらっと C#,C♯,C#(初心者用) Part130 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part129
http://mevius.2ch.net/test/read.cgi/tech/1497000961/
■関連スレ
C#, C♯, C#相談室 Part94 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1492843013/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured >>352
ここを見て
http://dobon.net/vb/dotnet/system/asadmin.html
「管理者として自分自身を起動する」参考にして組んだことはあるけど
マニフェスト自動生成するのは知らなかったというか見てなかったw 元MSだった奴がいってたけど
VS2010当初でも開発に2,000人関わってたらしいよ。
旧バージョンを使って次のバージョンを作っていたとか
VS2010でVS2015といった具合 SharpDevelopを使ってとあるソースを開いて、ビルドしたらNewtonsoft.Jsonが無いよ、と。
↓
SharpDevelopに組み込まれてるNuGetでNewtonsoft.JsonをインストールしようとしたらNuGetが古過ぎてインストールできません、と。
↓
NuGetコマンド単体の最新版を落としてNewtonsoft.Jsonパッケージを導入した。
でもビルドするとNewtonsoftっていうNamespase知りません、みたいなエラー(CS0246)に。
↓
パッケージがGACに入ってる必要があるの?と思ってGacutil.exeを使おうとするも、Visual Studioにしか入ってないっぽい。
でも諸事情でVisual Studioはいま使えない。
何とかSharpDevelopでビルドを通したいんです。何が足らない || 間違ってるのでしょうか? アセンブリロードのアルゴリズムってどっかに文書化されてたと思う
それ探して読んで一個一個ステップを確認すればいいんじゃないか ビルドオプションで、エラーメッセージを詳細に表示できないの?
そして、そのエラーメッセージで検索すれば? 358の繰り返しになるけど
NuGet単体版ならプロジェクトがパッケージを自動的に参照とかしないだろうから
明示的に参照させる必要があると思うけど大丈夫? Publicクラスの中にPublicクラスを定義しているソース見かけたんだけど、これって何の意味があるの? >>362
書いた人に聞かないと分からないでしょ
まあ、推測だけど、たぶんクラスAと一緒にしか使われない、
従属的なクラスBがあったとして、BをAの内部クラスにしたら
そういう従属的な関係が分かりやすくしたいという意図なんじゃないか。
たぶん今時の流儀じゃないと思うけど、.NET 1.0の時代からあるWindows Formなんか
そういうのいくつかあった気がする Formクラス1つに対応するビジネスロジッククラス1つを作ること
0個でもだめだし2以上でもだめ
っていう頭のおかしいコーディング規約を押し付けてきたバカSEがいて
そのアホくさい制約を回避するために内部クラスを多用したことがある >>364
formと紐付かないクラスを作ればよかったんじゃないの? >>363
読み返してみたら確かに内部クラスは従属的な位置付けだわ、サンクス >>365
だから作っちゃいけない規約なんだって
FormA LogicA
FormB LogicB
FormC LogicC
って風に最初からクラス構成が固定
なので内部クラスを使うしかなかった 頭おかしいやつの下で働かなくちゃいけないなんて哀れだな それを疑問に思わないレベルのバカPGばかり相手にしてるんだろうから仕方ない
PGの能力に全く期待しない前提なら悪くないルールだと思う
参考にさせてもらうわ >>366
あと、内部クラスって外側の非publicのメンバにもアクセスできるので
(当然インスタンスメンバの場合は参照握ってる必要があるけど)
publicにはしたくないけどある特定のクラスにだけアクセスを許したい、
っていう事情もあった可能性もあるね。 >>367
Formの数しかクラスが存在し得ないとしたらたしかに頭おかしい規則だが、Applicationはどうしたの? wpfのmodelファイルみたいに作って欲しいんちゃう? 何にせよ
「なんでそんな事するのか」をハッキリさせとかないと本末転倒になるな
ルール守るために余計に無駄なことしてたら あるブランチの、あるブランチ(例えばmaster)との差分が
わかる方法ってないですかね?
今は別ディレクトリにクローンしてディレクトリの差分を見ています あるファイルと削除しようとすると
「別のプロセスで使用されているため、プロセスはファイル XXXX' にアクセスできません。」と出ます。
vshost32.exe がファイルを掴んでいるので削除できないようです。
なのでVSを終了すれば削除はできます。
自分自身が掴んでいるファイルを削除するのはどうすればいいですか?
別にexeを作成して終了後に起動して削除するくらいしか思いつかないのですが・・・ >>376
「あるファイル」も状況もよくわからないが
プロパティからデバッグの項目開いて「Visual Studio ホスティング プロセスを有効にする」のチェックを外す
コード上で掴んだファイルがそのままとか言う話ならそのコード示して >>376
もし画像表示中に削除できない問題なら、ググれば色々やり方が見つかると思うよ xmlとかxlsをusingで読み込んでdisposeだかreleaseだかしてない系? >>378
それはこれだな
http://dobon.net/vb/dotnet/graphics/drawpicture2.html
ファイルパスを直接渡さなければいいのでストリームでなくてもバイト配列にしてもいい
わかりにくくなるが一行で済ませるには
(Image)new System.Drawing.ImageConverter().ConvertFrom(System.IO.File.ReadAllBytes(filename))とか
>>379
usingから外れると自動でDispose()されるから、それはC#と違う話じゃないかな >>380
旧コードはされないらしい
また、クラスを作った奴がやる気なくてもusingで解放されないらしい
usingの自動解放は言語機能ではなく努力目標 関係ないが、HttpClientも一時期話題になったよな クライアント側アプリでは一通りやりたいことできるようになったので、webアプリというか、サーバーサイド系に進みたいのですが、ASP.Netでお勧め書籍ありますか? >>381
usingが努力目標ってなんだそりゃ。usingはスコープを抜ける時に必ずDisposeを呼ぶだけ。
そのクラスのDisposeの実装に問題があるだけだろ。 >>384
え?C#の話だとおもったんだけど違う? >>383
ASP.NETとASP.NET MVCは別物なので注意。
今から勉強するなら、ASP.NET MVCの方。 今は非常に時期が悪いのでMVCすらお勧めできないよ >>390
idisposeさんと共犯なので合わせ技で死刑 >>388
ASP.NETとASP.NET Web Formsとを同一視してないかい? >>393
いや全然ちげーよw
ASP.NETの中にMVCとWeb Forms(とその他諸々)が含まれるんだから >>392
ASP.NETだけだと、WebFormsを指す場合が多いからね。特に書籍。
補足として書いとくべきだったな。 >>395
ASP.NET Core MVCの方にしか力入れてないけどね
あ、最近だと特にSignalRもか >>388
ちょww 古い本買ってしまいましたぁー
情報ありがとう(>_<) >>389
どのように時期がわるいのですか?
宜しければ業界背景とか教えてください あ、ちなみに私は別業界の週末趣味プログラマで、あまりトレンドとかわからんのです ASPの話題なんでちょっと聞きたいんだけど、linuxサーバー用のwebアプリ作ろうと思ったら.net coreでやるのとjavaでやるのとどっちが敷居低いかな?昔javaでちょっとやってたらマッピングやらがえらい面倒だった記憶あるんだけど JavaならSpring Boot使えば楽
.NET Coreは敷居とか気にするレベルの人が手を出しちゃダメ >>399
今新しいのに移り変わったんだけど全然普及してない
OSSにいるライバル達が強すぎてびくともしてない
従来使ってた人が離れつつある
目新しさがないのが非常にまずい
今後新しいなにかを提案できなければ
早い時期に丸々消える可能性がある >>403
なるほどですね。
しかし、本も買ってしまったし、一通りは知識として吸収しておこう。 結局、今Webアプリを構築するなら、何がベストなんでしょうか?
クライアント側はjavascript一択ですよね。
サーバ側が、自分はweb formで止まっています。
.net coreなるものを調べてみればいいんでしょうか? >>403
.NET Standard2.0あたりを理由として持ち出すならまだしも、そんな理由かよwww >>405
Webアプリで何をしたいの?言語はc#縛りなの? >>407
イントラ環境で、DBを絡めた様々な情報を提供したいです。
目的によってGridViewで表示したり、グラフで表示したり。
C#縛りではないですが、VS2008時代にゴリゴリ作った経験があるので一番馴染みがあります。 Node.jsとかでいいんじゃね
Coreも含めた今時のWebはWinFormsや昔のASP.NETとは全く思想が違ってて、コンポーネントというものが存在しない
MVC系なら何選ぼうが似たようなもんだから環境の整えやすさとかで選べばいいと思うよ >>410
vs2008使ってた人なら、相当な理由がない限りNode.jsを選択する理由はないな >>412
本人にJavaScriptを書く気があるということは十分な理由になりうる >>413
DB連携が主だろうからASP.NETでいいだろ
フロントエンドはもちろんjavaScript使うだろうが Web初心者ならWebAPl + html + js + cssが簡単でオススメ
難解で無駄の多いサーバーサイドレンダリングは初心者には厳しい
厄介なWebフレームワークも最初は避けたほうがいい >>415
初心者でWebAPIいきなり立ち上げさせるのか?認証はIdentityServer?
初心者だからこそフレームワークの流儀に従えば簡単にできるものを選択した方がいい
どうせイントラなんだし >>416
難しい事は考えなくていい
初心者の作るイントラサービスならCookie認証で十分
モデルバインディングとかテンプレートエンジンとかのあれこれ考えるより
素のhtmlとapiの方が素朴でずっとわかりやすいよ >>418
MVCなら言語だけの違いになっちゃうから、もちろんWebFormsを意図してるんだろ?
LinuxでWebFormsが問題なく動作する構成を教えてくれないか
まさかMonoとか言わないよね >>420
トンデモ理論ワロタwww
LinuxだからASP.NET Coreに決まってるだろカス >>415
SPAやjQueryなんかの動的DOM操作をサーバーサイドレンダリングに移行するとかの話じゃなければ
サーバーサイドの方が分かりやすいと思うがな。動的なページがほとんど無いってんなら話は別だけど。 >>422
結局MVCやれってこと?
なら 知っている言語 + 新しいアーキテクチャの習得 でNode.jsと対等じゃん
必死に噛み付く意味がわからないな >>425
もともとVisualStudioでc#書いてたっぽいしね
サーバーサイドコンプレックスにまみれたフロントエンドエンジニアが、必死にHTML&javaScriptをアピールしているようにしか思えない >>417
Linuxとは一言も言ってないじゃん
お前の目は腐ってるの? >>426
対等だと本気で思ってるのかこのアスペは >>426
c#知らない人がなぜ偉そうにしてんのかwww >>429
まさかと思うけど、Nodeにサーバーサイドレンダリングのフレームワークが無いとでも思ってるのかな? >>432
何がそんなに気に障るのが知らないけど、Web MVCへの移行を前提とした場合において、
入りやすいWeb開発プラットフォームの例としてNodeを挙げただけだよ
サーバーサイドレンダリングだけでいいなら情報の豊富なRailsやPHPの方がもっと入りやすいだろうね
君がその選択肢としてASP.NET Coreを推すなら否定するつもりはないし、俺を攻撃するよりお勧めの本やサイトでも教えてあげたら? >>433
お前がなぜここにいるのかわからんわ
別のスレに誘導してさしあげろ フロントエンドとバックエンドを疎結合に保つほうが実装も保守も簡単だよ
サーバーサイドレンダリングはその点で劣る
ユーザーインターフェースはフロントエンドに責務を割り振る
サービスはrest apiでバックエンドに責務を割り振る
やることが明確で実装もシンプル、保守も楽チン
おまけに動作も軽快になってユーザーもにっこり 次のASP.NET core 2.0で.net frameworkが捨てられるって
明言されてるから他に移るにはいい時期だと思うよ
海外の人達はどんどんASP.NETを捨てて新しい言語と別のフレームワークに移ってる最中
2.0が安定するのはリリースされてから1年後あたりだから本当に時期が悪い どの人がキチガイじゃないんですか?
ほぼ全てキチガイだと思うので、キチガイじゃない人を挙げてもらった方が早いかなと思いました >>441
道にキチガイとそうでない人が多数混雑していたという
どんな質問をすればキチガイとそうでない人がわかるでしょうか?
c#で答えなさい(5点) >>441
>>436みたいなデマ流すやつもいるから気をつけな >>443
ググって答え探して見つからなかったんだな
かっこ悪い >>446
>>440に答え書いてあんのに、infoQの集会置くのデマに引っかかったんだな >>446
いまだに訂正記事出さないってどういう神経してるんだろうか クライアント10台分のサーバ間送受信処理100回を並列で処理しようと考えているんだが、
Enumerable.Range(1, 10).AsParallel().ForAll(t =>
{
Enumerable.Range(1, 100).ToList().ForEach(c =>
{
クライアントの送受信処理
}
}
と
var taskArray = Enumerable.Range(1, 10).Select(t=>
{
return Task.Run(() => {
Enumerable.Range(1, 100).ToList().ForEach(c =>
{
クライアントの送受信処理
}
}).ToArray();
Task.WaitAll(taskArray );
でそれぞれ実行すると実行順が明らかに違う理由を教えてください。
どちらも10台が順不同で各100回実行すると思いきや、なぜか前者は任意の1,2台だけ100回実行した後に残りを順不同で各100回実行して、後者は狙い通り10台順不同で各100回実行する・・・ .ForAllのせいじゃないかな…
Enumerable.Range(1,10)の出力だけが並列で実行されて、
.ForAllの中味は現スレッド1本で順次行われてない? >>451
CPUがデュアルコアだからじゃね?
Enumerable.Range(1, 10000).AsParallel().ForAll(i =>
{
Console.WriteLine("{0} 処理開始", i);
Thread.Sleep(1000);
Console.WriteLine("{0} 処理終了", i);
}); 昔XPのころVS2010ExpressでC#で遊んでました
7年ぶりにまたいじってみようかと思い立ったのですが
最新版の無償版ってVS2017Comunityとかいうやつになるんですか?
これで2010時代のソリューション読み込めますか?
当時はC♯としかいってなかったはずだけど今はC#7というみたいですがずいぶん内容は変わったのでしょうか?
浦島状態ですみません。乙ちゃ〜ん! ■ このスレッドは過去ログ倉庫に格納されています