【问题标题】:Xamarin.Forms receiving an image from an api endpointXamarin.Forms 从 api 端点接收图像
【发布时间】:2020-09-20 17:09:43
【问题描述】:

我正在尝试从 api 端点提取图像。到目前为止,除了图像之外,一切正常。我不确定是因为我将其称为字符串还是应该将其更改为其他内容。

以下是我的代码,如果需要更多或我遗漏了什么,请告诉我。

谢谢

EventsDAL.cs

public class Events
    {
        public string EventTitle { get; set; }
        public string EventDescription { get; set; }
        public DateTime EventDateAndTime { get; set; }
        public string EventPosterImageURL { get; set; }
        public string EventTitleReturn { get { return EventTitle; } }
        public string EventDescriptionReturn { get { return EventDescription; } }
        public DateTime EventDateReturn { get { return EventDateAndTime; } }
        public string EventImageReturn { get { return EventPosterImageURL; } }

    }

EventsPage.xaml

<ScrollView >
            <ListView x:Name="lvEvent" HasUnevenRows="True">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <ViewCell>
                            <StackLayout VerticalOptions="Fill" >
                                <Label x:Name="lbTitle" HorizontalOptions="Center"  Text="{Binding EventTitleReturn}" FontSize="Title"/>
                                <Label Text="{Binding EventDescriptionReturn}"  FontSize="Large"/>
                                <Label Text="{Binding EventDateReturn}" HorizontalOptions="Center" FontSize="Large"/>
                                <Image Source="{Binding EventImageReturn}" />
                            </StackLayout>
                        </ViewCell>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
        </ScrollView>

我的控制器

 public ActionResult Events()
        {
            var umbEvents = Umbraco.Content(1056).Children<Event>().ToList();
            var vmEvents = new List<EventViewModel>();
            foreach (var item in umbEvents)
                vmEvents.Add(new EventViewModel
                {
                    EventTitle = item.EventTitle,
                    EventDescription = item.EventShortDescription,
                    EventDateAndTime = item.EventDateAndTime,
                    EventPosterImageURL = item.EventPosterImage == null ? "" : item.EventPosterImage.Url,
                    EventURL = item.Url
                });
            return Json(vmEvents, JsonRequestBehavior.AllowGet);
        }

邮递员

"EventTitle": "Seeing Red!",

“EventDescription”:“The Ladies of Seeing Red 是孟菲斯音乐界最好的原声乐队之一。他们为任何环境提供了种类繁多的音乐。这是一场充满活力的有趣演出,而且他们会适应适合任何规模的场地。由 ProBuilt of Memphis 赞助。",

"EventDateAndTime": "/Date(1599332400000)/",

"EventURL": "/events/seeing-red/",

“EventPosterImageURL”:“/media/3ablnzez/seeingred.jpg”

【问题讨论】:

  • 绑定'{绑定'之间的空间?我们真的可以看到图像路径吗?您可以将 xxx.png 替换为您不想在 stackoverflow 上发布的任何敏感数据
  • @LeRoy 我已经用我从邮递员那里得到的信息以及我的控制器提取这些信息的样子更新了它。希望这是足够的信息。
  • @Jason 你在说我的控制器吗?抱歉,这方面有点新意。
  • "EventPosterImageURL": "/media/3ablnzez/seeingred.jpg"- 这是一个路径,而不是一个 URL。如果要从远程服务器加载图像,则需要返回一个完整的 url - 即http://myserver.com/media/3ablnzez/seeingred.jpg

标签: c# xamarin xamarin.forms


【解决方案1】:

"EventPosterImageURL": "/media/3ablnzez/seeingred.jpg"

这是一个路径,而不是一个 url。如果要从远程服务器加载图像,则需要返回一个完整的 url - 即http://myserver.com/media/3ablnzez/seeingred.jpg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-25
    • 2016-11-08
    • 1970-01-01
    • 2022-12-23
    • 1970-01-01
    • 2015-08-16
    相关资源
    最近更新 更多