コード例 #1
0
        public static IRouteTable AddFileRoute(this IRouteTable routeTable, string urlPath, string filename, Func<OwinRequest, object> modelProvider)
        {
            if (routeTable == null)
            {
                throw new ArgumentNullException("routeTable");
            }
            if (modelProvider == null)
            {
                throw new ArgumentNullException("modelProvider");
            }
            if (string.IsNullOrWhiteSpace(urlPath))
            {
                throw new ArgumentNullException("urlPath");
            }
            if (string.IsNullOrWhiteSpace(filename))
            {
                throw new ArgumentNullException("filename");
            }

            IFileInfo fileInfo;
            if (!routeTable.FileSystem.TryGetFileInfo(filename, out fileInfo))
            {
                throw new IOException(string.Format(CultureInfo.CurrentCulture, "File '{0}' was not found.", filename));
            }

            var handler = new SimpleRequestHandler(fileInfo, modelProvider);
            var route = new SingleFileRoute(urlPath, handler);

            return routeTable.AddRoute(route);
        }
コード例 #2
0
 public void Init()
 {
     requestHandler = new Mock<IRequestHandler>();
     route = new SingleFileRoute("/blog/recent", requestHandler.Object);
 }