草庐IT

multi-page-application

全部标签

c# - 升级到 Web API 2 后,HttpApplication.Application_Start 未触发

我将应用程序升级到WebApi2,Application_Start不会触发在IISExpress上运行的升级后。我确实遵循了http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2的官方升级路径并三重检查了我的设置。该应用程序使用StructureMapMVC4来注入(inject)依赖项。因此WebActivator的PreApplicationStartMethod被触发并且依赖解析器被正确设置。此后

c# - 使用 DbContext 和 TenantId 的 Multi-Tenancy - 拦截器、过滤器、EF 代码优先

我的组织需要共享数据库、共享架构Multi-Tenancy数据库。我们将根据TenantId进行查询。我们将拥有很少的租户(少于10个),并且所有租户都将共享相同的数据库模式,不支持特定于租户的更改或功能。租户元数据将存储在内存中,而不是数据库(静态成员)中。这意味着所有实体现在都需要一个TenantId,并且DbContext需要知道默认情况下对此进行过滤。TenantId可能由header值或原始域标识,除非有更可取的方法。我已经看到各种利用拦截器的示例,但还没有看到关于TenantId实现的明确示例。我们需要解决的问题:我们如何修改当前架构以支持此功能(我认为很简单,只需添加Te

c# - ASP.NET 用户控件 : Page_Load fires before property is set

这让我发疯。我有一个非常简单的用户控件:publicint?ImageId{set;get;}protectedvoidPage_Load(objectsender,EventArgse){...dosomethingwithImageId...}然后我将此控件放在UpdatePanel中带有ListView的页面上:'ID="cipPreview"runat="server"/>问题是Page_Load在ASP.NET设置ImageId之前触发。在调试器的帮助下,我发现由于某种原因,MyControl中的ImageId已设置,但它仅在Page_Load完成处理后才会发生。怎么了?

c# - 关于 IHttpModule.Dispose 和 Application_End 的问题

我刚刚在读这篇文章"WhenisIHttpModule.Disposemethodcalled?"我找到了这个"TheDisposemethodperformsanyfinalcleanupworkpriortoremovalofthemodulefromtheexecutionpipeline."whichwouldmeanit'sapplication-wide.It'sok.AnywaytryingbymyselfIfoundoutthatusingtheIHttpModuleDisposemethodandaneventhandlerfortheApplication.Disp

c# - Application.Exit() 哪个操作是第一个

当我阅读MSDN上有关Application.Exit()的文档时,它说:通知所有消息泵它们必须终止,然后在处理完消息后关闭所有应用程序窗口。以我的理解,为了通知所有消息泵终止,该方法最终会向应用程序消息队列发送一个WM_QUIT消息。发布消息后,该方法将关闭每个窗口(通过MSDN)。问题出现在这里,当这个方法试图关闭每个窗口时,WM_QUIT消息应该没有被处理,但是MSDN说“它关闭所有窗口aftermessages已处理”。文档似乎与我的推断矛盾。这里有什么问题,非常感谢任何帮助。 最佳答案 有趣的问题;使用ILSpy,让我们看

c# - Tridion 2011 : Changing a page's file name as it's being published

美好的一天!我允许我的内容编辑器将CSS存储为非常基本的组件(通常包含他们粘贴到的称为“代码”的单个多行字段),然后将这些作为组件演示添加到带有.css的页面中文件扩展名。创建页面时,用户可以设置一些配置值:缩小输出(bool)、文件名前缀和文件名后缀。最后两个的目的是,如果用户选择缩小CSS,则位于演示服务器上的文件名可能会有所不同。除了文件名的修改外,我已经完成了所有工作。我不想更改CM中的文件名;仅当它驻留在演示服务器上时。我假设这可以在放入CSS页面模板的TBB中完成。我试了一下,但想确定我没有遗漏任何东西。以下示例只是为了简洁而对一些可配置值进行硬编码的速记。//Create

c# - Application.SetCompatibleTextRenderingDefault(false);

Application.SetCompatibleTextRenderingDefault(false);错误:BeforetheestablishmentofthefirstobjectIWin32WindowintheannextocallSetCompatibleTextRenderingDefault.为什么会出错?如何避免?SetCompatibleTextRenderingDefault实际上做了什么? 最佳答案 在.NET1.x中,GDI+Graphics类用于呈现某些控件。由于性能问题,此方法已被废弃,因此.NET2

c# - Application.Quit() 方法无法清除进程

我已经看到很多从Google搜索返回的关于此的帖子,但其中引用的解决方案都没有为我解决这个问题。所以,我想我自己试试。在这段代码之后:PowerPoint.ApplicationpowerPoint=newMicrosoft.Office.Interop.PowerPoint.Application();powerPoint.Visible=Office.MsoTriState.msoTrue;Microsoft.Office.Interop.PowerPoint.Presentationppt=null;entercodehere我可以发出ppt.Quit();命令和Powerpoi

C# .net MVC,设置 Google Application Credentials JSON 文件的路径

我刚刚获得了这个Google示例项目,可以在我的VS2015上运行,但是我发布到“IIS”并托管后,当我打开链接时,网页一直显示如图所示的消息我将key添加到web.config中,但仍然不起作用,只是想知道以前是否有人这样做过,我真的需要帮助,谢谢!编辑:这是我的代码Web.Config 最佳答案 在运行时以编程方式设置环境变量:stringcredential_path=@"C:\..\key.json";System.Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_

c# - 将 Application Insights 与 ILoggerFactory 结合使用

我正在尝试将异常记录到ApplicationInsights。我通过直接调用TelemetryClient.TrackException成功地做到了这一点。但是,我想在我的代码中对此进行抽象,以防将来我想登录到其他平台,因此我只想坚持使用ILogger接口(interface)。我发现您可以使用ILoggerFactory.AddApplicationInsights(已实现here),但无论我做了什么,我都没有看到日志显示在ApplicationInsights中。下面是我的代码:Startup.csIConfigurationRootConfiguration{get;set;}I