En iyi uygulamalar olarak, özel durumları özel bir şekilde ele almak için tüm uygulamaları zorlamaya nasıl devam edilir. Örneğin, bu reklam UI herşeyi "InvalidOperations" işlemek ve kullanıcıya geri mesajı gösterecektir aşağıdaki arayüzÖzet Uygulamanın belirli bir şekilde davranması için nasıl uygulanmalı?
public interface IApplicationProvider<TData> : IDisposable{
TData Get(string appName);
}
public abstract ApplicationProviderBase<MyDTO> {
public abstract MyDTO Get(string appName);
}
public class SomeApplicationProvider: ApplicationProviderBase {
public MyDTO Get(string appName){
...
if (somecondition == somecondition)
throw new InvalidOperation("Application could not be fetched due to a custom error");
}
}
olduğunu varsayalım. Bununla birlikte, başka bir yaklaşım, verileri ve herhangi bir hata mesajını saracak özel bir nesne oluşturmak olacaktır.
public OperationObject Get(string appName){
var operationObject = new OperationObject();
if (somecondition == somecondition)
operationObject.ErrorMessage = "message";
else
operationObject.Data = MyDTO
}
Düzenleme: Temel olarak tüm sağlayıcılar operasyonu neden başarısız bir sebep temin etmek için bir yol istiyorum.
Bu yaklaşımı uyguladım ve blog yayını için teşekkürler. –