Tag: 路由

ASP.NET MVC CMS数据库的dynamic路由

基本上我有一个使用ASP.NET MVC构build的CMS后端,现在我正在转到前端站点,并且需要能够根据input的路由从我的cms数据库加载页面。 因此,如果用户inputdomain.com/students/information,MVC会查看页表,看看是否存在具有与学生/信息匹配的永久链接的页面,如果是,则redirect到页面控制器,然后加载页面数据库中的数据并将其返回到视图以进行显示。 到目前为止,我试图抓住所有的路线,但它只适用于两个网段,所以/学生/信息,但不/学生/信息/秋天。 我无法find任何关于如何完成这个任务的东西,所以我尽pipe在这里find并开放源代码ASP.NET MVC cms并parsing代码。 这里是目前为止的路线configuration,但我觉得有一个更好的方法来做到这一点。 public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); // Default route to handle core pages routes.MapRoute(null,"{controller}/{action}/{id}", new { action = "Index", id = UrlParameter.Optional }, new { controller = "Index" } ); // CMS route to handle routing to the PageController to check the database for the route. […]

ASP.Net MVC处理段与路由

我是新的ASP.Net MVC,并面临一个问题。 这里是。 routes.MapRoute( "SearchResults",// Route name "{controller}/{action}/{category}/{manufacturer}/{attribute}", new { controller = "Home", action = "CategoryProducts", category = UrlParameter.Optional, manufacturer = UrlParameter.Optional, attribute = UrlParameter.Optional } ); 这是我的控制器方法。 public ActionResult CategoryProducts(string category, string manufacturer, string attribute) { string[] categoryParameter = category.Split('_'); . . . return View(); } 当我打我的url,我总是在类别参数为空 http://localhost:50877/Home/CategoryProducts/c_50_ShowcasesDisplays 我得到这个错误 Object reference not set to […]

路由请求时,HttpContext.Current.Session为空

没有路由, HttpContext.Current.Session在那里,所以我知道StateServer正在工作。 当我路由我的请求时, HttpContext.Current.Session在路由页面中为null 。 我在IIS 7.0上使用.NET 3.5 sp1,没有MVC预览。 看来AcquireRequestState在使用路由时永远不会被触发,因此sessionvariables没有被实例化/填充。 当我尝试访问会话variables,我得到这个错误: base {System.Runtime.InteropServices.ExternalException} = {"Session state can only be used when enableSessionState is set to true, either in a configuration file or in the Page directive. Please also make sure that System.Web.SessionStateModule or a custom session state module is included in the <configuration>. 在debugging的时候,我也得到了这个错误: HttpContext.Current.Session在这个上下文中是不可访问的。 […]

ASP.NET MVC,Url路由:最大path(URL)长度

情景 我有一个应用程序,我们采取了旧的查询stringURL结构: ?x=1&y=2&z=3&a=4&b=5&c=6 并将其改为path结构: /x/1/y/2/z/3/a/4/b/5/c/6 我们正在使用ASP.NET MVC和(自然)ASP.NET路由。 问题 问题是我们的参数是dynamic的,并且(理论上)我们需要适应的参数数量是没有限制的。 直到我们被下列火车撞到,这一切都很好: HTTP错误400.0 – 错误的请求ASP.NET检测到URL中的无效字符。 当我们的URL超过一定的长度时,IIS会抛出这个错误。 Nitty砂砾 以下是我们发现的: 这不是一个IIS问题 IIS确实有一个最大path长度限制,但上面的错误不是这个。 了解点iis点networking如何使用请求过滤部分“基于请求限制的filter” 如果IIS的path太长,则会抛出404.14,而不是400.0。 此外,IIS最大path(和查询)的长度是可configuration的: <requestLimits maxAllowedContentLength="30000000" maxUrl="260" maxQueryString="25" /> 这是一个ASP.NET问题 经过一番探讨: IIS论坛主题:ASP.NET 2.0的最大URL长度? http://forums.iis.net/t/1105360.aspx 事实certificate,这是一个ASP.NET(好,.NET真的)问题。 问题的核心在于,据我所知,ASP.NET无法处理超过260个字符的path。 在棺材里的钉子,这是由菲尔哈克本人证实: 堆栈溢出ASP.NET URL MAX_PATH限制问题ID 265251 问题 那么问题是什么? 问题是,这个限制有多大? 对于我的应用程序,这是一个交易杀手。 对于大多数应用程序,这可能是一个没有问题的。 怎么披露? 没有提到ASP.NET路由的地方,我听说过这个限制的窥视。 ASP.NET MVC使用ASP.NET路由的事实使得这个影响更大。 你怎么看?

Android – 通过听筒播放audio

我目前有代码,使用AudioRecord类从设备麦克风中读取录音,然后使用AudioTrack类将其播放出去。 我的问题是,当我演奏它通过扬声器电话播放。 我希望通过设备上的耳塞播放。 这是我的代码: public class LoopProg extends Activity { boolean isRecording; //currently not used AudioManager am; int count = 0; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); am = (AudioManager) getSystemService(Context.AUDIO_SERVICE); am.setMicrophoneMute(true); while(count <= 1000000){ Record record = new Record(); record.run(); count ++; Log.d("COUNT", […]

如何在Symfony 2中获得当前路线?

如何获得Symfony 2中的当前路线? 例如, routing.yml : somePage: pattern: /page/ defaults: { _controller: "AcmeBundle:Test:index" } 我怎样才能得到这个somePage值?

什么algorithm在地图上计算从点A到点B的方向?

地图提供者(如Google或Yahoo! Maps)如何提供方向? 我的意思是,他们可能有某种forms的真实世界的数据,当然包括距离,但也可能是像驾驶速度,人行道,列车时刻表等等。但假设数据是一个更简单的格式,比如一个非常大的有向图边缘权重反映距离。 我希望能够快速计算从一个任意点到另一个点的方向。 有时候这些点会在一起(在一个城市内)靠近,而有时它们会相距甚远(越野)。 像Dijkstraalgorithm这样的graphicsalgorithm将不起作用,因为graphics是巨大的。 幸运的是,像A *这样的启发式algorithm可能会起作用。 但是,我们的数据是非常有条理的,也许某种分层的方法可能工作? (例如,存储相距很远的某些“关键”点之间的预先计算的方向以及一些局部方向,然后两个远处点的方向将涉及到关键点的局部方向,到另一关键点的全局方向,然后是局部方向再次。) 实际中使用了哪些algorithm? PS。 这个问题的动机是在在线制图方向上发现怪癖。 与三angular形不等式相反,有时Google Maps会认为XZ比XYZ中的中间点更长,而且更远。 但是也许他们的行走方向也可以优化另一个参数呢? PPS。 这是另外一个违反三angular形不平等的情况,对我来说,他们使用某种分层的方法: XZ和XYZ 。 前者似乎使用着名的塞瓦斯托波尔大道,尽pipe它稍微偏离了方向。 编辑 :这些例子都没有工作了,但都在原来的职位时。

.net中带点的语义url

我正在尝试为search页面创build语义URL,但是如果有人使用完成点search,则.net引擎会返回404。 该请求甚至没有得到路由引擎,所以我认为它的东西有关安全或类似的东西。 例如,在这种情况下,stackoverflow路由也不起作用: https : //stackoverflow.com/questions/tagged/etc 。

从操作filter属性redirect

在ActionFilterAttribute做redirect的最好方法是什么? 我有一个名为IsAuthenticatedAttributeFilter的ActionFilterAttribute并检查了会话variables的值。 如果该variables为false,我希望应用程序redirect到login页面。 我宁愿redirect使用路由名称SystemLogin但是在这一点的任何redirect方法将罚款。

当url末尾有一个“点”时,出现“无法find资源”错误

我正在使用ASP .NET MVCtesting版,并得到HTTP 404(资源无法find)错误,当我使用这个URL在最后有一个“点”: http:// localhost:81 / Title / Edit / Code1 。 如果我删除最后的点或点在中间的某处,我不会得到错误。 我试图debugging,但它在MvcHandler中的ProcessRequest之前从“System.Web.CachedPathData.GetConfigPathData(String configPath)”得到错误。 在url的末尾不允许使用“点”吗? 或者有没有办法解决路线定义来处理这个url? 举个例子:我有一个名为Detail1 [Id(integer),Code(string),Description(string)]的表,通过它的Id列与Master1具有FK关系。 每当我selectMaster1的logging,我也select它的Detail1logging来得到它的代码字段。 为了不每次都进行这个连接(因为通常不只有一个细节,所以不止一个)我select不使用Id列,并且我创build了Detail1的Code PK。 但是,当我摆脱Id和使用代码作为PK,然后我的路线也开始与代码字段,如:Detail1 \ Edit \ Code1 这个守则可以有任何东西或最后,包括DOT。 有些情况下,我可以在最后禁止DOT,但有时候确实有意义。 而且我也看到这个post ,路线可以非常灵活,所以我不认为我的太奇怪了。 所以这就是为什么我做非标准的事情 有什么build议么? 而且为什么在一个url结尾处有一个DOT这么奇怪呢?