Json / 웹 서비스를 Observable 컬렉션 모델로 직렬화

Hasyemi Rafsanjani

묻고 싶기 때문에 웹 서비스 API를 사용하고 관찰 가능한 Model 컬렉션으로 직렬화했습니다.

내 질문은이 관찰 가능한 컬렉션을 어디서나 사용할 수 있으므로 매번 웹 서비스에서 호출 / 가져 오기 / 소비 할 필요가 없습니다.

그렇다면 API를 한 번만 호출하면 API를 다시 호출하지 않고 매번 데이터를 사용할 수 있습니까?

감사

다니엘 크 르지 츠 코프 스키

위에서 언급했듯이 @thang은 매번 웹 서비스 호출을 제거하기 위해 앱에 데이터를 저장하는 여러 가지 방법이 있습니다.

내가하는 방식을 제안하겠습니다.

1. Web Api에서 JSON 데이터를 검색 할 때 Observable Collection으로 파싱합니다.

    ObservableCollection<User> usersList = JsonConvert.DeserializeObject<ObservableCollection<User>>(responseJson).Users;

2. 목록이 있으면 직렬화 된 객체 (JSON 형식)를 텍스트 파일에 저장할 수도 있습니다 (JSON은 문자열과 다른 것이 아님을 기억하십시오).

private async void saveUsersToFile(string serializedUsersListAsJson)
{
  StorageFolder storageFolder = ApplicationData.Current.LocalFolder;
  StorageFile usersFile = await storageFolder.CreateFileAsync("users.txt", CreationCollisionOption.OpenIfExists);
  await FileIO.WriteTextAsync(usersFile, serializedUsersListAsJson);
}

이 단계에서는 앱을 닫았다가 다시 시작하더라도 데이터를 저장할 수 있습니다.

3. 앱을 시작할 때 아래 메서드를 호출하여 파일에서 데이터를 읽을 수 있습니다.

private async void retrieveNotes()
{
  StorageFolder storageFolder = ApplicationData.Current.LocalFolder;
  StorageFile usersFile = await storageFolder.CreateFileAsync("users.txt", CreationCollisionOption.OpenIfExists) 
  string serializedUsersList = await FileIO.ReadTextAsync(usersFile );

  // Deserialize JSON list to the ObservableCollection:
    if(serializedUsersList!=null)
     {
       var usersList= JsonConvert.DeserializeObject<ObservableCollection<User>>(serializedUsersList);
     } 

4. 마지막 단계는 필요한 페이지에서 Observable Collection 필드를 선언하는 것입니다. 예를 들어 페이지간에이 목록을 전달해야하는 경우 다음을 사용할 수 있습니다.

Frame.Navigate(typeof(MainPage), usersList);

앱이 실행되면 파일에서 데이터를 읽어야합니다. 그 후에는 앱이 실행되는 동안 사용할 수 있습니다. 내 제안은 Web Api를 연결할 때마다 데이터를 캐시하여 새 데이터를 검색하는 것입니다.

이것이 도움이되기를 바랍니다. 데이터 저장에 대한 자세한 내용을 보려면 내 블로그의 아래 게시물을 읽으십시오.

https://mobileprogrammerblog.wordpress.com/2016/05/23/universal-windows-10-apps-data-storage/

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

GSON에서 객체의 JSON 컬렉션 (잠재적으로 다른 컬렉션과 함께) 역 직렬화

분류에서Dev

여러 JSON 형식으로 직렬화하는 Spring REST 웹 서비스

분류에서Dev

Windows Phone 8.1의 웹 서비스에서 JSON 직렬화

분류에서Dev

(WebApi) 객체 컬렉션을 Json으로 직렬화 할 수 없습니다.

분류에서Dev

Newtonsoft.Json "추가"를 사용하여 컬렉션 역 직렬화

분류에서Dev

Visual Basic 웹 서비스에서 내부 배열로 JSON 텍스트 역 직렬화

분류에서Dev

.net 웹 서비스가 JSON 직렬화를 수행하는 방법

분류에서Dev

RestSharp를 사용하여 하나의 값으로 개체 컬렉션 직렬화

분류에서Dev

모델 클래스 데이터를 json으로 직렬화하는 방법

분류에서Dev

Jackson 및 JaxB 직렬화로 RESTful 웹 서비스를 설계하는 방법

분류에서Dev

CRM 웹 리소스에 JSON으로 저장된 설정 역 직렬화

분류에서Dev

Java를 사용하여 하위 컬렉션으로 편리한 Json을 직렬화하는 방법은 무엇입니까?

분류에서Dev

asp.net 웹 API에서 json으로의 HL7 FHIR 직렬화

분류에서Dev

Jackson : 초기화되지 않은 컬렉션 필드를 비어있는 것으로 직렬화

분류에서Dev

연관된 레코드를 사용하여 JSON 레일 모델로 직렬화

분류에서Dev

단일 속성 개체의 JSON 배열을 문자열 컬렉션으로 역 직렬화

분류에서Dev

컬렉션에 포함 된 객체의 하나의 속성을 JSON으로 직렬화 할 수 있습니까?

분류에서Dev

유형에 따라 컬렉션 속성 이름이 변경되는 일반으로 JSON 역 직렬화

분류에서Dev

마시멜로 파이썬을 사용하여 모델에서 json 모델을 역 직렬화합니다.

분류에서Dev

웹 서비스 직렬화 제어

분류에서Dev

Reactive Extensions에서 다른 Observable 컬렉션을 기반으로 한 Observable 컬렉션 제한 / 버퍼링

분류에서Dev

외부 웹 서비스, XML을 .NET의 클래스 개체로 역 직렬화

분류에서Dev

웹 서비스 API에서 C # 개체로 XML 문자열 역 직렬화

분류에서Dev

MongoDb 컬렉션 쿼리에서 ObjectId에서 String으로 역 직렬화 할 수 없습니다.

분류에서Dev

XML Serializer를 사용하여 "특성이있는 컬렉션"으로 직렬화하는 방법

분류에서Dev

null Jackson 노드를 컬렉션으로 역 직렬화하는 데 문제가 있습니다.

분류에서Dev

Android에서 C # 웹 서비스로 직렬화 된 개체를 전달할 수 없습니다.

분류에서Dev

XML에서 Observable 컬렉션으로로드

분류에서Dev

Protobuf 직렬화 객체를 json으로

Related 관련 기사

  1. 1

    GSON에서 객체의 JSON 컬렉션 (잠재적으로 다른 컬렉션과 함께) 역 직렬화

  2. 2

    여러 JSON 형식으로 직렬화하는 Spring REST 웹 서비스

  3. 3

    Windows Phone 8.1의 웹 서비스에서 JSON 직렬화

  4. 4

    (WebApi) 객체 컬렉션을 Json으로 직렬화 할 수 없습니다.

  5. 5

    Newtonsoft.Json "추가"를 사용하여 컬렉션 역 직렬화

  6. 6

    Visual Basic 웹 서비스에서 내부 배열로 JSON 텍스트 역 직렬화

  7. 7

    .net 웹 서비스가 JSON 직렬화를 수행하는 방법

  8. 8

    RestSharp를 사용하여 하나의 값으로 개체 컬렉션 직렬화

  9. 9

    모델 클래스 데이터를 json으로 직렬화하는 방법

  10. 10

    Jackson 및 JaxB 직렬화로 RESTful 웹 서비스를 설계하는 방법

  11. 11

    CRM 웹 리소스에 JSON으로 저장된 설정 역 직렬화

  12. 12

    Java를 사용하여 하위 컬렉션으로 편리한 Json을 직렬화하는 방법은 무엇입니까?

  13. 13

    asp.net 웹 API에서 json으로의 HL7 FHIR 직렬화

  14. 14

    Jackson : 초기화되지 않은 컬렉션 필드를 비어있는 것으로 직렬화

  15. 15

    연관된 레코드를 사용하여 JSON 레일 모델로 직렬화

  16. 16

    단일 속성 개체의 JSON 배열을 문자열 컬렉션으로 역 직렬화

  17. 17

    컬렉션에 포함 된 객체의 하나의 속성을 JSON으로 직렬화 할 수 있습니까?

  18. 18

    유형에 따라 컬렉션 속성 이름이 변경되는 일반으로 JSON 역 직렬화

  19. 19

    마시멜로 파이썬을 사용하여 모델에서 json 모델을 역 직렬화합니다.

  20. 20

    웹 서비스 직렬화 제어

  21. 21

    Reactive Extensions에서 다른 Observable 컬렉션을 기반으로 한 Observable 컬렉션 제한 / 버퍼링

  22. 22

    외부 웹 서비스, XML을 .NET의 클래스 개체로 역 직렬화

  23. 23

    웹 서비스 API에서 C # 개체로 XML 문자열 역 직렬화

  24. 24

    MongoDb 컬렉션 쿼리에서 ObjectId에서 String으로 역 직렬화 할 수 없습니다.

  25. 25

    XML Serializer를 사용하여 "특성이있는 컬렉션"으로 직렬화하는 방법

  26. 26

    null Jackson 노드를 컬렉션으로 역 직렬화하는 데 문제가 있습니다.

  27. 27

    Android에서 C # 웹 서비스로 직렬화 된 개체를 전달할 수 없습니다.

  28. 28

    XML에서 Observable 컬렉션으로로드

  29. 29

    Protobuf 직렬화 객체를 json으로

뜨겁다태그

보관