VB.NET質問スレ(Part44)

■ このスレッドは過去ログ倉庫に格納されています
1.(もんじゃ)
垢版 |
2018/05/26(土) 18:08:49.12ID:QSlAAqmb
前スレ

VB.NET質問スレ(Part40)
http://toro.2ch.net/test/read.cgi/tech/1365857015/
VB.NET質問スレ(Part41)
http://peace.2ch.net/test/read.cgi/tech/1391334405/
VB.NET質問スレ(Part42)
http://echo.2ch.net/test/read.cgi/tech/1419148239/
VB.NET質問スレ(Part43)
https://mevius.5ch.net/test/read.cgi/tech/1465958469/
507デフォルトの名無しさん
垢版 |
2020/07/07(火) 18:21:35.43ID:sasngkCi
>>506
実行時に取得したくないからなんかないかってしつもんだぞ
508503
垢版 |
2020/07/07(火) 20:39:38.96ID:sfvoUyQU
皆さんありがとうございます。
例えば、テキストボックスの内容を初期値に戻すリセットボタンを付ける時など
デザイン時に設定した値を変数を使わずに簡単に呼び出せたらと前々から思っていました。
リソースを使うのがセオリーと思いますが、小規模なプログラムだとデザイナで設定する方が手軽なので…

TextBox1.Text = (New Form1).TextBox1.Text
↑のように新たなインスタンスを作ることも思いつきましたが効率が悪そうなので
>>503のコードのままにしようと思います。
509デフォルトの名無しさん
垢版 |
2020/07/07(火) 21:34:03.12ID:pZRFuct6
不特定のコントロールの不特定のプロパティーについて同様のことがしたいわけじゃなく、
特定のコントロールの特定のプロパティーで十分なら継承してResetTextみたいな
メソッドを追加しちゃうとすっきりするとは思う。
2020/07/07(火) 22:26:57.54ID:v9/yiQ7v
textboxならtextとtagに同じ値入れときゃいいんじゃね?
俺は内部からセットした時とユーザー入力区別するために使ってるけど
2020/07/08(水) 15:52:04.01ID:VvU4Rgja
tagってデザイン時に設定できたっけ?

結局起動後のユーザーコードでごちゃごちゃやるなら
用途に応じたコントロールに拡張すればってなるんじゃね
2020/07/08(水) 16:02:56.91ID:WXMpgQLP
デザイン時にも設定できるけどデザイン時に設定する仕様だと
絶対どこかで「TextとTag両方同じ値を設定」を忘れるから悪手
2020/07/08(水) 16:25:53.40ID:027Ge3m+
リセットボタンのClickイベントで、TextBoxに初期値をセットするコード書いて、
フォームのLoadイベントにも上記リセットClickを割当て(もしくはリセットClickを呼ぶコード書く)
同じことに実現できる気がしないこともない
2020/07/08(水) 19:32:20.68ID:VvU4Rgja
>>513
イベントハンドラから、違うイベントハンドラを直で呼ぶのは作法がよろしくない
初期化するプロシジャ書いて、リセットボタンのClickイベントとフォームのLoadイベントから呼べ
2020/07/08(水) 20:30:06.21ID:R3hJGdkL
>>512
Loadでコントロール全部舐めてTagにセットしてくって手はある
(コンテナが面倒くさいけど)
2020/07/12(日) 15:29:18.48ID:eH2rQS7C
Go To キャンペーンてなに?
2020/07/12(日) 15:31:59.68ID:lYrXBW+z
Gotoは使うなと爺ちゃんが言ってた
2020/07/13(月) 17:47:03.41ID:09itA6vs
強盗
2020/07/13(月) 17:59:31.89ID:aaJV9hNQ
∀B.ET「強盗ではありません。ごーつーです。」
2020/07/14(火) 16:33:50.53ID:lxjN9fvu
>>514
それはMSのガイドラインかなんかで定められてるん?
521デフォルトの名無しさん
垢版 |
2020/09/10(木) 11:00:21.02ID:1IS0tpD0
アホみたいな質問ですが投下させてください。

VBによって作られたソフトの改造業務をやることになったのですが
Propertyについての理解がネット記事を読んでも理解できません。

<宣言サンプル>
Public Structure ABC

Public Property SAMPLE(ByVal LONG as long) as boolean
Get
Return CBool(LONG And 0x0010)
End Get
Set(ByVal value as boolean)
'なにもしない
   End Set
End Property

End Structure

<実装サンプル>
For i=1 To 5
Strings = IIF(ABC.SAMPLE(i),"OK",NG")
Next

一部処理を省略していますが、
特定条件下で入るSAMPLEパラメータを基にして
条件分岐してるみたいですが
GETとSETの違いが全く理解できず
実装サンプルの構文の意味が理解できません。

初心者で申し訳ありませんが何卒ご教示お願いしまs
2020/09/10(木) 16:49:27.51ID:fVezAmUD
SET 設定する
GET 取得する
日本語だろ
2020/09/10(木) 17:07:50.68ID:HD/UycmT
作りが悪い気がするけど、なにもしてないんだから
Set側無視してたんなる関数だと思っていいんじゃね
2020/09/10(木) 18:16:35.03ID:3VR4tcWl
readonlyでいい気もするけど要はビットテストみたいなことしたいんだろ
2020/09/13(日) 00:23:00.92ID:TFaD5/iw
ASP.NET+SQLServer2019でWebアプリ作ったんだけど、デバッグでDB接続はうまくいくのに、発行してIISから参照するとDB接続が失敗して困ってる。
2020/09/13(日) 14:54:38.22ID:xeL9byBp
参照先が正しく設定できてないときは、確かプロジェクトフォルダ内ファイルを参照
することが多い。したがってデバック時にエラーが出ない。
そういう時は、参照先をすべてチェックするといい。
527525
垢版 |
2020/09/14(月) 17:07:20.83ID:ayzmQ3GL
ちょっと詳しい人に聞いたら、SQLServer側の問題だった。
あと、凝ったことやろうとするとJavascriptも使えないとダメだな。
528デフォルトの名無しさん
垢版 |
2020/09/16(水) 10:53:00.65ID:57F1eHvg
素人質問で申し訳ありませんが再度書込させていただきます。
VB2008にて、
「ボタンを押した時、既にEXCELが起動していたら終了する」処理をやらせたいのですが、
EXCELが起動していない時に実行するとエラーになってしまいます。
ネットとかで試してみたりしたのですが、うまくいきません。
EXCELが起動しているかどうかのプロパティなど、わかる方いたらご教示ください。

サンプル
<宣言>
Public ExAppli As Excel.Application 'Excel Object
Public ExBook As Excel.Workbook 'Excel Workbook Object
Public ExSheet As Excel.Worksheet 'Excel Worksheet Object
  Const FilePath As String ="C:\STRAGE\"

<構文@>
Public Function ExcelOpen(ByVal FilePath As String) As Boolean
ExAppli = CreateObject("Excel.Application") 'EXCEL Objectの作成
ExAppli.Visible = False 'アプリケーションの非表示
ExBook = ExAppli.Workbooks.Open(FilePath) 'ファイルを開く
ExAppli.Visible = True 'アプリケーションを表示
End Function

<構文A>
Public Function ExcelClose() As Boolean
'EXCEL起動のチェックがしたい
If Cbool(ExAppli.Active) = True Then
ExAppli.Quit() 'EXCEL終了
Else
'エラーメッセージ
End If
End Function
2020/09/16(水) 18:01:22.74ID:tyILeQdo
EXCELが起動していない時に実行するとエラーなのは
お前の意図する動作だろ
2020/09/16(水) 20:48:50.73ID:pG4LN1Ne
' An error 429 occurs on the following line:
Set oExcel = GetObject(, "Excel.Application")
2020/09/22(火) 21:31:39.04ID:itMH1iYh
trycatchで捨てれば楽
532デフォルトの名無しさん
垢版 |
2020/10/07(水) 21:30:27.59ID:ZJ/MXczd
MSChartのグラフ部分を拡大縮小できるように拡張メタファイルを直接生成する関数やライブラリってありますでしょうか?
2020/10/08(木) 05:23:50.50ID:GTaO2d9W
MSChartのグラフ部分を拡大縮小できるようにって部分はちょっと意図を読めないけど
拡張メタファイルはSystem.Drawing.Imaging.Metafileを使えば作れるよ
New Metafile(Stream or String, ほかいろいろ)した後、Graphics.FromImage(meta)で作ったGraphicsに書き込んでいけばいい
Graphicsの各種メソッド呼び出すだけで自動的にファイルに書き込まれていく 逆にSaveメソッドはpngにしかならないので呼んじゃダメ
New Metafileの第2引数にデバイスコンテキスト要求されるけど
これはダミーのBitmap作ってGraphics.FromImage()からGetHdc()するとか
フォームアプリならthis.CreateGraphics()からGetHdc()するとか
2020/10/08(木) 12:42:30.49ID:PTmOp2GP
>>532
使ったことないけど、佐藤さんの作ったヘルプファイルを見た感じ
SaveImageで一発で出来るように思うんだけど違うの?

>>533
そこの意図は明瞭でしょ
EMFの利点はベクター形式だってことなんだからw
2020/10/08(木) 13:44:07.81ID:3btmZKnR
MSChartのグラフ部分を(拡大縮小できるように)拡張メタファイルに出力する
こうか 読み違えてたわ
536デフォルトの名無しさん
垢版 |
2020/10/08(木) 23:31:16.63ID:/6L+tlPV
>>533 >>534
返信ありがとうございます!Saveimageでばっちりできました。直接お絵描きする必要無かったです。
2020/10/24(土) 15:30:50.53ID:P9kP7iSR
ASP.NETで作ったWebアプリがpc、AndroidのChromeでは動くのに
iPhoneのChrome、safariではボタン押しても正常に動作しない。
どうしてだろう?
2020/10/24(土) 15:44:00.66ID:P9kP7iSR
あとGoogleの検索エンジンに全く引っかからない。
一応、headタグや見出しにSEO対策したつもりだが、、
539デフォルトの名無しさん
垢版 |
2020/10/27(火) 19:32:20.87ID:bFDGidnH
まあ、お前が分からないのなら
他に分かるやつなんていないよ
540デフォルトの名無しさん
垢版 |
2021/01/17(日) 13:10:16.16ID:XppeH8WH
教えてください。
VB.netです。
inkeditでtext-alignを触りたい時はどうすればいいですか?
文字を真ん中に持っていきたいと思っています。
2021/01/18(月) 10:46:27.50ID:G8032nPp
ES_CENTERつけても無視されたからInkEdit単体だと多分無理
雑にやるなら上端にTextBox重ねるとか
2021/01/18(月) 18:42:17.74ID:Y7agfnjO
>>540
全選択してSelectionAlignment でいけるんじゃね
543デフォルトの名無しさん
垢版 |
2021/01/20(水) 18:57:07.25ID:JnS7W0cK
>>540
全選択の意味がわかりません。いろいろやってみましたがわかりませんでした。
教えてください。
544デフォルトの名無しさん
垢版 |
2021/01/20(水) 19:07:52.98ID:JnS7W0cK
>>540
スミマセン。
InkEdit1.SelectionAlignment = HorizontalAlignment.Center
でできました。
でもカーソルが邪魔です。カーソルは消せないですよね。
2021/01/22(金) 23:20:03.70ID:05kTt1yA
アクセス許可の権限範囲がいまだに理解できない俺。
Authenticated Users  この権限は理解に苦しむ。
546sage
垢版 |
2021/01/24(日) 23:05:38.57ID:70iKnrYl
inkpictureのstrokeをGetPixelで色を収得したいのですが、どうすればいいですか?
2021/02/02(火) 16:58:04.73ID:KLUL/+Qk
ADO.NETの操作について詳しいサイトありましたら紹介してもらえませんでしょうか?
2021/02/02(火) 19:55:19.61ID:fWKN54jK
>>547
https://docs.microsoft.com/ja-jp/dotnet/framework/data/adonet/
2021/02/12(金) 18:31:31.63ID:faW+M87N
非同期処理でtextboxに文字を出力する方法でおすすめのページある?
2021/02/12(金) 18:51:14.78ID:EzzdzoPL
>>549
いくらなんでもざっくりし過ぎじゃないか
2021/02/12(金) 18:53:42.04ID:faW+M87N
>>550
cmdの結果をデリゲートでTextBoxに出力したいんだがデリゲート処理がわからなくて
2021/02/12(金) 19:08:48.57ID:EzzdzoPL
>>551
Control.Invoke使ってもいいけど今時はその「cmdの結果」
を返すメソッドを非同期メソッドにするだけだよ
2021/02/12(金) 19:12:37.11ID:faW+M87N
>>552
https://dobon.net/vb/dotnet/process/standardoutput.html

これの「コマンドプロンプトに文字列を入力することで、複数のコマンドを実行する」を参考にしてるんだけどよくわかんなくてね
2021/02/12(金) 19:16:01.10ID:faW+M87N
>>552
ttps://dobon.net/vb/dotnet/process/standardoutput.html

ここの複数コマンドのみてるけどこの処理とは違うの?
2021/02/12(金) 19:16:17.41ID:faW+M87N
消える…
2021/02/12(金) 19:17:31.96ID:faW+M87N
>>552
これとは違う?
https://i.imgur.com/nqnqpws.png
2021/02/12(金) 21:00:41.51ID:7M5mWl4U
>>556
非同期で呼び出されるイベントハンドラで結果がもらえるコードみたいだだから
非同期メソッドにはしづらいね。

例えばフォームにこんなメソッドを用意して、
Private Sub OnUIThread(a As Action)
  BeginInvoke(a)
End Sub

イベントハンドラで
OnUIThread(
Sub()
  TextBox1.Text = "hoge"
End Sub)
みたいにやればいいんじゃないの?
2021/02/12(金) 21:09:14.42ID:7M5mWl4U
しかしVBのラムダ式は酷いねw
昔VB好きだったけどこれが嫌でC#に乗り換えた人いっぱいいると思うわ
559デフォルトの名無しさん
垢版 |
2021/02/14(日) 10:17:02.39ID:p2XUJg0+
Picturebox1に円を描いた後、Button1で円を追加したいと思います。
以下のコードだと前の円が消えてしまうのですが、どうすればいいですか?
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim canvas As New Bitmap(PictureBox1.Width, PictureBox1.Height)
Dim g As Graphics = Graphics.FromImage(canvas)
g.DrawArc(Pens.Black, 20, 20, 20, 20, 0, 360)
PictureBox1.Image = canvas
End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim canvas As New Bitmap(PictureBox1.Width, PictureBox1.Height)
Dim g As Graphics = Graphics.FromImage(canvas)
g.DrawArc(Pens.Black, 20, 20, 10, 10, 0, 360)
PictureBox1.Image = canvas
End Sub
2021/02/14(日) 10:54:41.13ID:uBaPwBqa
>>559
内容理解せずコピペだけでコード書く人?
>Dim canvas As New Bitmap(PictureBox1.Width, PictureBox1.Height)
>PictureBox1.Image = canvas
新しい「canvas」を自分で用意してPictureBox1.Imageを差し替えているんだから前に描いた部分が無くなるのは当たり前
Graphics.FromImage(PictureBox1.Image)に描かないと
2021/02/14(日) 11:50:51.24ID:aTi3CIRw
VB.netはdobon.netのコピペでどうにかなりますw
2021/02/15(月) 14:10:16.04ID:5FnD09yO
Dim i as Integer
i =6

Dim sBox as TextBox
sBox.Text = "aaa"

これですと、上のiでは何ともないですが、下のsBoxには
「値が割り当てられる前に〜」と警告が付きます。
警告が付いたら
= New TextBoxをつけて、
sBox.Disposeで閉めればいいと考えていますが、
どれにNewをつけるとか付けないとかの区別について教えてください
2021/02/15(月) 14:48:46.22ID:8oqgKRR4
そもそも上下で明らかに違うじゃん
上は変数への代入で下は変数のプロパティへの代入
上に合わせるなら下は
Dim sBox as TextBox
sBox = New TextBox
でしょ
2021/02/15(月) 15:38:10.60ID:99lDenvk
>>562
それを理解するためには構造体(値型)とクラス(参照型)の違いを理解する必要がある。

これは余計なお世話だけど、そのレベルの初心者なら今からでもC#に乗り換えた方がいいよ。
VBでもC#でも習得の難易度は違わない。今あえてVBを選択する理由はないよ。
2021/02/15(月) 21:44:03.49ID:9tCXcZYT
Disposeが正確に書けてるかは自信ない。
無駄に書いてることもあるかも知れないし、必要なのに書いてないけど悪い影響なく動いてたり。
2021/02/15(月) 22:09:14.54ID:JE19der5
下手にvb出来るとvb6からの置き換えとかいう定番のクソPJにぶち込まれる可能性があるぞ
2021/02/17(水) 00:11:37.94ID:L4nzR7y3
いまさらだけど、
VB6にあったコントロール配列ってなんでなくなったの?
2021/02/22(月) 09:27:56.84ID:vXu6VXfd
VBFormのブラックボックスな実装に依存してるから
WinFormは.NET Frameworkベースだからブラックボックスは使えない

互換性保とうにも、イベントハンドラの実装なんか別物に変化してるんで
不可能だと判断されたのだろう
569デフォルトの名無しさん
垢版 |
2021/02/23(火) 08:50:50.19ID:NUvCbrOs
昔の書籍のVB5でゲーム作ろうとか
VB6でDirectX7ゲーム作ろうとか持ってるけど
.NETでは全く違うのかね?

BitBLTとかも使えなくなってんの?
DirectXはVBからの使い方のルールも違うのかね?
2021/02/24(水) 11:14:45.88ID:yk917ZdG
BitBltはWindowsAPIだからインポートすれば使えるがアンマネージになるのでめんどくさい
.NETのGraphicsライブラリの使い方覚えるほうがずっと楽

DirectXも同様。色々ラッパーも有るけどオワコンも多い
.NETでゲーム作りたいならUnitiyでも覚えたほうがいいんじゃないかな
571デフォルトの名無しさん
垢版 |
2021/02/24(水) 11:54:14.87ID:BstpO7i2
unityとかどんどん肥大化するから使いたくない
VSだって肥大化してるからVS2008やcode使ってる
2021/02/26(金) 00:57:11.39ID:yh0R3Tzg
VB.netで 3Dグラフってどうするの?
2021/02/26(金) 19:21:46.77ID:pp9GTcLB
Chart
2021/02/28(日) 18:05:38.62ID:HFC/+izz
音声認識について教えてください。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
reco.SetInputToDefaultAudioDevice()
Dim gram As New Recognition.SrgsGrammar.SrgsDocument
Dim Rule As New Recognition.SrgsGrammar.SrgsRule("color")
Dim List As New Recognition.SrgsGrammar.SrgsOneOf("red", "green", "blue")
Rule.Add(List)
gram.Rules.Add(Rule)
gram.Root = Rule
reco.LoadGrammar(New Recognition.Grammar(gram))
reco.RecognizeAsync()
End Sub

Private Sub reco_SpeechRecognized(ByVal sender As Object, ByVal e As System.Speech.Recognition.RecognitionEventArgs) Handles reco.SpeechRecognized
Select Case e.Result.Text
Case "red"
SetColor(Color.Red)
Case "green"
SetColor(Color.Green)
Case "blue"
SetColor(Color.Blue)
End Select
End Sub

これの"red", "green", "blue"を
a(1)="red"
a(2)="green"
a(3)="blue"

というデータから読み取りたいと思います。
どうすればいいですか?
2021/02/28(日) 19:02:27.16ID:ReKePojt
引数なしでNew SrgsOneOfしたあとそれにAddしてけばいいんじゃないの
2021/02/28(日) 19:40:09.89ID:HFC/+izz
どのようにAddすればいいですか?
Dim a(100) As Recognition.SrgsGrammar.SrgsItem
a(1) = SrgsGrammar.SrgsItem("red")
List.Add(a(1))
2021/02/28(日) 20:09:34.72ID:ReKePojt
こんなんだろ多分
Dim oneOf = New SrgsOneOf()
For Each word In words
oneOf.Add(New SrgsItem(word))
Next
List.Add(oneOf)
2021/02/28(日) 22:36:09.00ID:HFC/+izz
返信ありがとうございます。
List.Add(oneOf)
のoneOfで
「型SrgsOneOfの値をSrgsItemに変換できません。」
というエラーが出ます。
教えてください。
2021/03/03(水) 20:12:19.91ID:FWifKpzu
List.Add(New SrgsItem(oneOf))
で解決しました。ありがとうございました。
2021/03/03(水) 20:39:29.57ID:FWifKpzu
ディクテーションで、なぜか
”he" だけ認識しない。
発音が悪いだけでしょうか。
"heel"とか"she”とか"what"は認識します。
581デフォルトの名無しさん
垢版 |
2021/03/03(水) 20:47:48.28ID:NQNDMH5/
頭も悪いと思うよ
582デフォルトの名無しさん
垢版 |
2021/03/05(金) 08:31:54.32ID:TerEZabb
質問させてください。
VB.net2010にてAcrobat sdkを使用し、デスクトップに保存しているpdfを
ボタンを押すとPanel1に表示するプログラムを作成しました。

Dim pdfOcx As New AxAcroPDFLib.AxAcroPDF
Dim sFile as string = "C:\temp\a.pdf"
pdfOcx.Dock = DockStyle.Fill
Panel1.Controls.Add(pdfOcx)
pdfOcx.LoadFile(sFile)

次の条件において確実にアプリが落ちてしまいます。(vb.netではエラーログ無し)
・PDF表示後、アプリを5分程度放置してもう一度PDFを表示させる。
Windowsのログには必ず次のエラーが記録されます。
障害が発生しているモジュール名: ntdll.dll、バージョン: 10.0.19041.844、タイム スタンプ: 0xa9ac4e88
例外コード: 0xc0000005

開くPDFを別のものに変えても発生します。
Acrobat sdkを使用せずWebBrowserで表示させても発生します。

恐縮ですが、何か原因は考えられるでしょうか?
よろしくお願いします。
2021/03/05(金) 15:31:35.57ID:g515SU59
0xc0000005はアクセス違反
…解放済みのメモリのアクセスしたりすると起こる
OCXがウンコっぽいのでどうにもならないかもしれない
2021/03/05(金) 15:48:52.76ID:TerEZabb
>>583
そうですか。
ありがとうございます。
2021/03/05(金) 15:55:30.08ID:Q+C4a65x
GCされちゃったとかそんなのかな…
2021/04/01(木) 12:49:52.32ID:zlbcSdbZ
VBからFirebase>Firestoreにデータ保存するサンプルプログラムない?
587586
垢版 |
2021/04/02(金) 16:45:34.04ID:xNBuYvES
youtubeで検索したら英語、C#ですがやり方が出てきました。
2021/04/04(日) 14:54:07.18ID:dSOQ4jrk
>>586
https://www.example-code.com/vbnet/fireBase.asp
2021/04/04(日) 14:56:45.03ID:dSOQ4jrk
FirebaseよりMySQLとかPostgreSQL使う方が後々良いと思うが
2021/04/06(火) 15:50:26.01ID:zhVSqWc5
VB.NETの案件も最近増えて来たね
一時期はC#がほとんどだったのにね
2021/04/06(火) 18:21:03.21ID:T0VrQe+V
ソースは?
2021/04/06(火) 20:47:58.45ID:M/BjHe5K
VBってnullable referenceすら追加してもらえなくなったし
もう保守しかないんじゃ
2021/04/06(火) 21:01:00.28ID:Bsudg9ot
VBは今後言語への機能追加はしないってMS公式に宣言出たよ
2021/04/06(火) 21:15:07.65ID:34VhPfz+
VBの役割はVS2005の時代で終わってると思うよ。
2008以降も使ってるところは正直どうかしてると思う。
2021/04/06(火) 21:44:34.37ID:A8jxxYnR
VB.NETプロジェクトをC#プロジェクトにソースレベルでコンバート出来るようにならない限りは…
2021/04/07(水) 10:08:48.70ID:RzHskyO4
>>593,594
新機能なんて不要
既存機能でシステム構築出来れば案件も出て来る
出来る範囲の広いC#は意外とビジネスロジックには機能過多だし
VB.NETはCOBOLみたいにレガシーになるのさ
2021/04/07(水) 10:51:49.42ID:RzHskyO4
>>591
VB.NET 案件でググれば分かる
2021/04/07(水) 12:27:17.69ID:RzHskyO4
>>593,594
https://social.msdn.microsoft.com/Forums/ja-JP/fa2ee5c5-bc19-4158-86bd-4140292698be/vb12398201702446012395123881235612390net-core-net5?forum=vbgeneralja
2021/04/07(水) 16:13:26.53ID:bHi8pMA7
>>592
ビジネスロジックでnull許容型なんてまず使わない
だから不要
2021/04/07(水) 17:05:34.61ID:bWQM3yRK
>>599
C#に追加されたのはnull「非」許容な参照型な
つまり君の言う通り必要だ
2021/04/08(木) 10:01:09.84ID:30DrVK+s
>>600
null許容型でもスペースクリアする様にルール化する
大丈夫
2021/04/08(木) 10:46:46.37ID:30DrVK+s
VBで出来る事はC#で出来る
C#しか出来ないのはゲームプログラミングや制御プログラミング
ビジネスロジックにはそんなモノ必要無い
2021/04/08(木) 10:51:03.94ID:30DrVK+s
ゆえにCADとかやってる所ではC++からC#に移行した所は有る
言語の需要が違う
2021/04/08(木) 11:20:19.42ID:LXJcVTVi
C#の機能がビジネスロジックに不要であるという主張に具体性がなさすぎてなんとも
明らかな反例だけは出ていて、意図せぬnullの混入がビジネスロジックにとって極めて有害であることは君自身が認めている通りだ
実際VBerって参照型を正しく理解してない奴多いし、nullが嫌だからと構造体を好んで使う馬鹿な現場もよくある
むしろVBにこそ必要な機能だと思うけどね
2021/04/08(木) 11:35:10.81ID:30DrVK+s
>>604
>>602で書いてる通りC#の便利過ぎる機能はビジネスロジックに使うかは施主による
でも大概のビジネスシステムではVB.NETの機能だけで実装出来る
それをVBプログラマ自身も自覚して無い問題は有る
2021/04/08(木) 11:40:01.45ID:30DrVK+s
要はnull非許容にするにも方法は他にも有るから何とでもなる
それを明確に実装ルール化してる現場は幸せ、だと言う事
ルール化してない現場は有象無象のプログラムが出来て混乱する元
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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