我正在使用MVC应用程序从webhook Json Payload显示有关问题的信息。该应用程序基于实时功能运行(使用反序列化和信号器)。应用程序正在侦听webhook何时触发,并且无论应用程序是否在浏览器上运行,它都将发送电子邮件。
当Json有效负载被反序列化时,我希望如何保留应用程序中的信息记录,将其自动插入数据库,以便以后显示。
Public Function PostIssueData(iss As iTable) as ActionResult
Dim db As New Database
db.iTable.Add(iss)
db.SaveChanges()
return view()
End Function
我不认为这种方式是可行的,因为我正在读取Json有效负载,因此表只有空值并且不会插入任何内容。
我正在阅读这样的数据:
Dim r As System.IO.StreamReader = New System.IO.StreamReader(HttpContext.Request.InputStream)
Dim rawJson As String = r.ReadToEnd()
Dim iss As rObject = JsonConvert.DeserializeObject(Of rOject)(rawJson)
System.Diagnostics.Trace.TraceError(rawJson)
所以我必须使用这些数据插入数据库并自动完成,如何做到这一点?
更新 - 这使用了像这样的实体框架。
Dim newIssue As New IssueResultTable
newIssue.issueKey = issue.issue.key
newIssue.status = issue.issue.fields.status.name
Using db As New GartanIssueTrackerEntities
db.IssueResultTables.Add(newIssue)
db.SaveChanges()
End Using