>source

Azure Mobile App SDK를 사용하고 있으며 Account, personal, Labor 및 Subscription이라는 4 개의 테이블이 있습니다. 여기에 모델의 코드를 남겨 두겠습니다.

public class Account : TableData
{
    [JsonProperty(PropertyName ="userid")]
    public string UserId { get; set; }
    [JsonProperty(PropertyName = "personalid")]
    public string PersonalId { get; set; }
    [JsonProperty(PropertyName = "subscriptionid")]
    public string SubscriptionId { get; set; }
    [JsonProperty(PropertyName = "subscriptionappleid")]
    public string SubscriptionAppleId { get; set; }
    [JsonProperty(PropertyName = "subscriptiongoogleid")]
    public string SubscriptionGoogleId { get; set; }
    [JsonProperty(PropertyName = "laborid")]
    public string LaborId { get; set; }
    public override bool Equals(object obj)
    {
        return Equals<Account>(obj, this);
    }
    public override int GetHashCode()
    {
        return Id.GetHashCode();
    }
}
public class Personal : TableData
{
    [Required]
    [StringLength(50)]
    [JsonProperty(PropertyName = "name")]
    public string Name { get; set; }
    [Required]
    [StringLength(50)]
    [JsonProperty(PropertyName = "dadlastname")]
    public string DadLastName { get; set; }
    [Required]
    [StringLength(50)]
    [JsonProperty(PropertyName = "momlastname")]
    public string MomLastName { get; set; }
    [Required]
    [StringLength(50)]
    [JsonProperty(PropertyName = "email")]
    public string Email { get; set; }
    [Required]
    [JsonProperty(PropertyName = "sex")]
    public Gender Sex { get; set; }
    [Required]
    [Column(TypeName = "datetime2")]
    [JsonProperty(PropertyName = "birthdate")]
    public DateTime? BirthDate { get; set; }
    public override bool Equals(object obj)
    {
        return Equals<Personal>(obj, this);
    }
    public override int GetHashCode()
    {
        return Id.GetHashCode();
    }
}
public class Subscription : TableData
{
    [Required]
    [JsonProperty(PropertyName = "subscriptiontype")]
    public SubscriptionType SubscriptionType { get; set; }
    [Required]
    [Column(TypeName = "datetime2")]
    [JsonProperty(PropertyName = "subscriptiondate")]
    public DateTime? SubscriptionDate { get; set; }
    [Required]
    [Column(TypeName = "datetime2")]
    [JsonProperty(PropertyName = "expirationdate")]
    public DateTime? ExpirationDate { get; set; }
    [Required]
    [JsonProperty(PropertyName = "standardsubscriptiontype")]
    public SubscriptionType StandardSubscriptionType { get; set; }
    [Required]
    [Column(TypeName = "datetime2")]
    [JsonProperty(PropertyName = "standardsubscriptiondate")]
    public DateTime? StandardSubscriptionDate { get; set; }
    [Required]
    [Column(TypeName = "datetime2")]
    [JsonProperty(PropertyName = "standardexpirationdate")]
    public DateTime? StandardExpirationDate { get; set; }
    public override bool Equals(object obj)
    {
        return Equals<Subscription>(obj, this);
    }
    public override int GetHashCode()
    {
        return Id.GetHashCode();
    }
}

지금 볼 수 있듯이 계정 모델에는 개인, 노동 및 구독에 대한 핵심 열쇠가 있습니다. 개인, 노동력 또는 susbcription을 변경할 때마다 테이블을 업데이트했는데 정보가 변경되었음을 구름에서 볼 수 있습니다.

개인 모델에서 1981 년 10 월 5 일에서 1981 년 10 월 6 일까지 생년월일을 변경 한 후 성공적으로 업데이트되지만, 앱을 닫고 30 분 또는 20 분 후에 다시 앱을 열면 Sql Azure와 관련이없는 로그인 방법을 사용하여 로그인하면 데이터베이스 정보가 이전 값으로 돌아가고 20 분 또는 30 분 정도 기다려야 내 응용 프로그램을 닫고 데이터베이스를 즉시 다시 열어야합니다. 또는 레코드가 영향을받지 않습니다.

이것은 이전에 언급 한 테이블에서만 발생합니다. 다른 테이블로 편집하면 이전에 언급 한 상황에 영향을받지 않습니다.

내가 뭔가 잘못하고 있는가 ??? 이전에는이 ​​문제가 발생하지 않았으므로 sqlLite에 문제가있을 수 있다고 생각하는이 테이블에 대한 오프라인 지원을 중단하려고 시도했지만 문제가 여전히 우세합니다.

이 이유가 무엇인지 이유를 무시합니다.

다행스럽게도 몇 가지 아이디어로 나를 도울 수 있기를 바랍니다. Foreing Keys를 제거해야합니까 ??? 전체 레코드를 삭제하고 새 PersonalId 또는 LaborId를 계정 모델에 다시 할당해야합니까 ??? 해결 방법으로.

  • 답변 # 1

    처음으로 방금 해결했습니다. 내 실수이기 때문에 사과하고 싶습니다. 누군가 로그인 할 때마다 실행되는 클라우드의 구성 시드 방법으로 계정 데이터를 하드 코딩 한 것으로 나타났습니다 .Azure Mobile Apps SDK에는 결함이 없습니다.

    정보를 롤백 한 데이터를 삭제했거나 내 정보를 업데이트하는 것이 좋습니다. 내 코드가 좋았 기 때문에 찾기가 어려웠습니다. 몇 달 전에 문제가 있었기 때문에 계정 정보를 하드 코딩했기 때문에 클라우드의 동작이 잘못되었습니다. 클라우드에서 계정 정보를 하드 코딩해야했습니다.

    어쨌든이 문제는 지금 가까이에있을 수 있다고 생각합니다 !!!

관련 자료

  • 이전 selenium - 크롬 브라우저의 설정 팝업에서 웹 요소를 찾을 수 없습니다
  • 다음 docker - 독립형 컨테이너에 오버레이 네트워크를 사용하여 컨텍스트 마감 시간이 초과되었습니다