teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

手順にイメージ追記

2018/04/19 02:47

投稿

FinalCode
FinalCode

スコア8

title CHANGED
File without changes
body CHANGED
@@ -74,8 +74,11 @@
74
74
 
75
75
  手順
76
76
  ---
77
+ ![イメージ説明](b543e4d558e7c4c302a61bfdc583040a.png)
78
+ ![イメージ説明](84b646eb36ac639dece425484fc67271.png)
77
79
  ADO.NET Entity Data Modelを作成→データベースからCode First選択して作成
78
80
 
81
+
79
82
  下記VBコードにてinsert処理を行う
80
83
  ```VB.NET
81
84
  Using context = New DbModel

2

用意されているコードの追記。タグからASP.NETの除外。

2018/04/19 02:47

投稿

FinalCode
FinalCode

スコア8

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,7 @@
1
1
  実現したい事
2
2
  ---
3
3
  insert時、テーブルのカラムに設定したDEFAULT値を反映させる
4
- 下記手順VBコードで.TRADE_QUANTITY = 1と書かなくてもT_TRADEのTRADE_QUANTITYに1が挿入される
4
+ 下記手順VBコードで.TRADE_QUANTITY = 1と書かなくてもT_TRADEのTRADE_QUANTITYにカラムのDEFAULT値である1が挿入される
5
5
 
6
6
  環境
7
7
  ---
@@ -11,20 +11,56 @@
11
11
  VB.NET
12
12
  EntityFramework6.2.0
13
13
 
14
-
15
- 手順
14
+ 用意コード
16
15
  ---
16
+ DbModel.vb
17
+ ```VB.NET
17
- ADO.NET Entity Data Modelを作成→データベースからCode First選択して作成
18
+ Imports System.Data.Entity
18
19
 
20
+ Partial Public Class DbModel
19
- 下記VBコードにてinsert処理を行う
21
+ Inherits DbContext
22
+
23
+ Public Sub New()
24
+ MyBase.New("name=DbModel")
25
+ End Sub
26
+
27
+ Public Overridable Property T_TRADE As DbSet(Of T_TRADE)
28
+
29
+ Protected Overrides Sub OnModelCreating(ByVal modelBuilder As DbModelBuilder)
30
+ modelBuilder.Entity(Of T_TRADE)() _
31
+ .Property(Function(e) e.USER_ID) _
32
+ .IsUnicode(False)
33
+
34
+ modelBuilder.Entity(Of T_TRADE)() _
35
+ .Property(Function(e) e.USER_NAME) _
36
+ .IsUnicode(False)
37
+ End Sub
38
+ End Class
39
+ ```
40
+
41
+ T_TRADE.vb
20
42
  ```VB.NET
21
- Using context = New DbModel
43
+ Imports System.ComponentModel.DataAnnotations
44
+ Imports System.ComponentModel.DataAnnotations.Schema
45
+
22
- context.T_TRADE.Add(New T_TRADE With {
46
+ <Table("TEST.T_TRADE")>
47
+ Partial Public Class T_TRADE
23
- .USER_ID = 1,
48
+ <Key>
24
- .USER_NAME = "山田"})
49
+ Public Property TRADE_NO As Long
50
+
51
+ <Required>
25
- context.SaveChanges()
52
+ <StringLength(10)>
53
+ Public Property USER_ID As String
54
+
55
+ <Required>
56
+ <StringLength(30)>
57
+ Public Property USER_NAME As String
58
+
59
+ Public Property TRADE_QUANTITY As Long
26
- End Using
60
+ End Class
27
61
  ```
62
+
63
+ テーブル
28
64
  T_TRADE構成
29
65
  ```SQL
30
66
  CREATE TABLE [TEST].[T_TRADE] (
@@ -36,7 +72,22 @@
36
72
  );
37
73
  ```
38
74
 
39
- 結果
75
+ 手順
76
+ ---
77
+ ADO.NET Entity Data Modelを作成→データベースからCode First選択して作成
78
+
79
+ 下記VBコードにてinsert処理を行う
80
+ ```VB.NET
81
+ Using context = New DbModel
82
+ context.T_TRADE.Add(New T_TRADE With {
83
+ .USER_ID = 1,
84
+ .USER_NAME = "山田"})
85
+ context.SaveChanges()
86
+ End Using
87
+ ```
88
+
89
+
90
+ 結果 T_TRADE
40
91
  TRADE_NO 1
41
92
  USER_ID 1
42
93
  USER_ID 山田

1

環境の詳細を追記しました。

2018/04/18 06:49

投稿

FinalCode
FinalCode

スコア8

title CHANGED
File without changes
body CHANGED
@@ -5,9 +5,10 @@
5
5
 
6
6
  環境
7
7
  ---
8
- VisualStudio2017
8
+ VisualStudio2017 15.5.2
9
9
  SQLServer2017
10
- ASP.NET(VB)
10
+ ASP.NET Web Forms
11
+ VB.NET
11
12
  EntityFramework6.2.0
12
13
 
13
14