Exemplo n.º 1
0
        public ActionResult Index()
        {
            var xdoc = new XDocument();
            var root = new XElement(rootns + "urlset");

            root.Add(new XAttribute(XNamespace.Xmlns + "image", imagens));

            var host = string.Format("{0}://{1}", Request.Url.Scheme, Request.Url.Authority);
            // TODO links should end with /

            var producers = producerRepository.All().Where(obj => !string.IsNullOrEmpty(obj.HomePage));
            var links     = producers.Select(obj => new Link
            {
                Url = string.Format("{0}/producer/details?name={1}", host, obj.Name)
            });

            AddLinks(links, root);

            var groups = categoryRepository.All();

            links = groups.Select(obj => new Link
            {
                Url = string.Format("{0}/{1}", host, obj.Name)
            });
            AddLinks(links, root);

            var products = productRepository.All();

            links = products.Select(obj => new Link
            {
                Url          = string.Format("{0}/{1}/details/{2}", host, obj.CategoryName, obj.Name),
                Photo        = string.IsNullOrEmpty(obj.GetPreview()) ? null : string.Format("{0}/Content/tiles/{1}/{2}", host, obj.CategoryName, obj.GetPreview()),
                LastModified = obj.LastModifiedDate
            }).ToList();

            AddLinks(links, root);
            xdoc.Declaration = new XDeclaration("1.0", "utf-8", null);
            xdoc.Add(root);

            return(Content(string.Format("{0}{1}{2}", xdoc.Declaration, Environment.NewLine, xdoc), "text/xml"));
        }
Exemplo n.º 2
0
        public ActionResult Index(string name)
        {
            var producers = producerRepository.All();

            return(View(producers));
        }