2015-09-08 12 views
0

我有一個基礎建設的應用程序,在一個頁面中有多個viewModels。使用具有多個視圖的挖空 - 如何最好地構建API

我一直在嘲笑數據,但我現在正在構建將運行它的API。

我的問題是我怎麼處理關於API的複雜viewModels。

比如我有一個「添加公司」頁面具有以下標籤: -

Company info (name, address, etc.) 
People at company (multiple people) 
Insurance Documentation (3 different types) 

我現在有每一種作爲單獨的ViewModels。

當我按下保存我現在困惑什麼是做事情的最佳方式。

如果我將所有3個viewModel捆綁在一起(將它們添加到一個主視圖模型),那麼很容易確保所有ID都排隊,但這看起來不是很模塊化或好主意,並且打破了「以API爲中心「。

但是如果我發送每個視圖模型以不同的API終點我怎麼保證ID的匹配正確(人 - >公司)等

在我在看兩個選項的瞬間: -

當按'添加新'時,在數據庫上創建一個空白公司並獲取其ID - >使用它來匹配所有內容。

  • OR -

當我按下保存先送新公司了,那麼當響應回來的(希望)OK那麼其餘的信息上傳到使用各自的終點現在正確的ID。

這兩個都似乎凌亂,所以我想知道什麼是'接受'最好的辦法做到這一點?

回答

1

您的第二種方法是我如何做,按Save將首先發送公司模型。然後,一旦您收到公司ID的'OK'迴應,在回調中您可以將其添加到其他模型併發送。

沒什麼雜亂的,只是標準的異步行爲。

+0

看起來好像我會提出很多要求 - 猜測這是爲了保持它的模塊化的權衡!如果沒有得到任何更好的答案,我會標記爲正確的 - 謝謝 - 猜測它只是'分析癱瘓!!' :-D –

+0

對API做出很多小的請求並不是一件壞事,它確實是保持它的模塊化。例如,您可以在其他地方重複使用完全相同的文檔API調用。 – Starscream1984

相關問題