如何让我的词典添加另一个项目(图像),<string,string,=“”image =“”>?

时间:2015-12-31 14:55:43

标签: c# image forms xamarin

我正在尝试将图像存储到我的数据库(文件)中,我不知道如何执行它以将其作为图像与我的字符串一起发送,如果我执行ToString(),它会给我一个错误因为它只需要它作为源/图像,因为我的数据库是&#34;文件&#34;。

static public async Task<bool> createData (string userId, string info1, string info2 , Image picture1 )

//所以上面是我想要添加的字符串。

    {
        var httpClientRequest = new HttpClient ();

        httpClientRequest.DefaultRequestHeaders.Add ("X-Parse-Application-Id", appId);
        httpClientRequest.DefaultRequestHeaders.Add ("X-Parse-REST-API-Key", apiKey);

        var postData = new Dictionary <string, string> ();

//上面是代码,我在这里认为问题是,因为字典只接受字符串,但是当我尝试编写时: var postData = new Dictionary&lt;字符串,字符串,图像&gt;它给了我一个错误。

        postData.Add ("userId", userId);
        postData.Add ("info1", info1);
        postData.Add ("info2", info2);
        postData.Add ("picture1", picture1); //error here because it is an image and it only wants strings.

所以我认为如果它有效,我会将图像添加到我的字典中,而我的字符串只在第3个命令上键入null?或者有更好的选择?

1 个答案:

答案 0 :(得分:0)

你看过Tuple班了吗?您可以像这样使用它:

Tuple<string, string, Image> postData =
     new Tuple<string, string, Image>(userId, info1, picture1);

编辑:

回答您的问题如下。您可以将元组添加到集合中,如下所示:

List<Tuple<string, string, Image>> postData = new List<Tuple<string, string, Image>>();
postData.Add(new Tuple<string, string, Image>(userId, info1, picture1));