は、これはあなたが一意のファイル名を取得するために欲しいものでなければなりません:
((ObjectType)(e.Item)).Id.ToString() + "-" + DateTime.Now.ToString();
はオブジェクトでのObjectTypeを交換することを忘れないでくださいあなたがリストを埋めるのに使ったこと。
カメラの場合は、単純なループを作成することをお勧めします。実際には、必要に応じて単純なプログレスバーを使用できます。
未処理の例外に関するこれまでの進捗状況はありますか?私はこのようなエラーを見つけるために何をしたいのですか?私の出力デバッグにjsonを書き、jsonをPostmanにコピーして送信します。あなたが処理されていないよりも優れたエラーを得るでしょう
私はこれが明確だったことを願っています!
idのいくつかの追加の例を編集します。
だから、例えば、あなたはJSON以下ました:これはリストにあり、あなたがこれを変換する必要がクリックされた場合は今
{
"name":"John",
"age":30
}
を。 クラス被呼者を作成し、この2つのフィールド(名前と年齢)を指定します。 public class Person { private string name; プライベートint年齢。
public Person() {
}
public int Age
{
get { return age; }
set { age = value; }
}
public string Name
{
get { return name; }
set { name = value; }
}
}
これで、最初に与えたコードを使用できます。ObjectTypeをPersonに置き換えてください。
私は、これは、それはまだ私はテストの理由で入れて、いくつかの汚いコードの最大いくつかのクリーニングをNeDSの、それもまだそこにあなたのデバッグウィンドウでJSONを持っている意味、汚れたバージョンであることに注意して(私の写真をアップロードする方法
((Person)(e.Item)).Id.ToString() + "-" + DateTime.Now.ToString();
そうHttpClientを、私はそれをベースアドレスを与え、あなたのようにそれが動作しない場合は、私が使用するクライアントのタイプがあることを使用しています。何が明確でない場合は
public static bool InsertAllFotos(tTodo ttodo, List<Fotos> fotos, List<string> blob)
{
//var test2 = blob[0].blob_data.Bytes;
List<tSyndFoto> tFotos = new List<tSyndFoto>();
foreach(var foto in fotos)
{
tSyndFoto tFoto = new tSyndFoto();
tFoto.id_synd_dossier = ttodo.id_gebouw;
tFoto.omschrijving = foto.Omschrijving;
tFoto.id_todo = ttodo.id_todo;
tFotos.Add(tFoto);
}
JObject json = new JObject();
json.Add("fotos", JsonConvert.SerializeObject(tFotos));
//tBlob tmpBlob = new tBlob();
//tmpBlob.blob_data = new Binary();
//tmpBlob.blob_data.Bytes = new byte[0];
// tmpBlob.blob_data.Bytes = blob[0].blob_data.Bytes;
//var lijst = new List<tBlob>();
//lijst.Add(tmpBlob);
json.Add("blobs", JsonConvert.SerializeObject(blob));
//json.Add("blobs", null);
//string test = json.ToString();
//var jon2 = JsonConvert.DeserializeObject(blob[0].blob_data.Bytes.ToString());
var test = json.ToString();
test = test.Replace("\"[", "[");
test = test.Replace("]\"", "]");
// test = test.Replace("\\n", "");
test = test.Replace("\\", "");
Debug.WriteLine(test);
var content = new StringContent(test, Encoding.UTF8, "application/json");
var resp = client.PostAsync("InsertFotos", content);
if (resp.Result.IsSuccessStatusCode)
{
var repStr = resp.Result.Content.ReadAsStringAsync();
JObject jo = JObject.Parse(repStr.Result.ToString());
return jo.SelectToken("InsertFotosResult", false).ToObject<bool>();
}
return false;
}
を依頼するhesistateはありませんここでJSONがあります私はこれから得ます(ブロブは私の写真ですが、大きすぎるためいくつかのデータを切り捨てました):
{
"fotos": [{"id_synd_foto":"00000000-0000-0000-0000-000000000000","id_blob":null,"id_synd_dossier":"xxx","web_image":null,"uploaded":null,"omschrijving":null,"datum":null,"id_todo":"xx","id_synd_eigenaarsnet_melding":null,"id_eigenaar":null,"id_synd_kavel":null,"bijlage_melding":null}],
"blobs": ["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"]
}
未処理の例外の問題は、おそらく不適切な要求か、画像が大きすぎることです。最初に2枚の写真を作成してアップロードすることもできます(または、バックグラウンドでアップロードすることもできます)。カメラのforループを実行します。第二に、リストビューのデータにアクセスできないとどういう意味ですか?あなたはインスタンスIDのためにしたいですか? –
@JordyDieltjensちょっとジョーディー、あなたの返事をありがとう。私は現在、処理されていない例外をチェックしています。今、私は実際のデバイスに編成していますので、よりリアルなものになります...カメラのループでいい考えです。私はこれを新しいContentPageに入れて、ProgressBarのようなものを適用することができます。 ListViewからデータにアクセスすると、私はViewCellからバインドされた情報が必要であることを意味しました。写真などの固有のファイル名を生成することができます。あなたは私の言いたいことを知っていますか? – paulvoelker