Ich arbeite an dem Zugriff auf REST API von Xamarin Forms. Ich habe eine Schnittstelle in tragbarer Klasse wie folgt durchHerausforderung beim Aufruf des Abhängigkeitsdienstes von Xamarin
public interface IRestService<T>
{
void Post(T item, string resourceURL);
}
public interface IRepository
{
}
Hinzufügen erstellt und in Drod Projekt Ich bin die Schnittstelle wie diese umgesetzt werden.
[assembly:Xamarin.Forms.Dependency(typeof(RestOperationsDroid))]
namespace VLog.Droid.DependencyServices
{
public class RestOperationsDroid : IRestService<IRepository>
{
private const string BaseURL = "http://127.0.0.1/logger/v1/";
HttpClient client;
public RestOperationsDroid()
{
client = new HttpClient();
client.MaxResponseContentBufferSize = 256000;
}
public async void Post(object item, string url)
{
var uri = new Uri(string.Format(BaseURL + url));
var jsoncontent = new StringContent(JsonConvert.SerializeObject(item), Encoding.UTF8, "application/json");
HttpResponseMessage response = null;
response = await client.PostAsync(uri, jsoncontent);
if (response.IsSuccessStatusCode)
{
//Debug(@" TodoItem successfully saved.");
}
else
{
//throw new Exception("Failed to Post data");
}
}
}
}
Aufruf in Xamarin.Forms (PCL Projekt)
DependencyService.Get<IRestService<Log>>().Post(_logitem, "sync");
Ich erhalte eine Fehlermeldung sagt:
Objektverweis nicht auf eine Instanz eines Objekts festgelegt.
Was lief bei dieser Implementierung falsch?
Was ist die Beziehung zwischen 'IRepository' und' Log'? – hvaughan3