在C#中,如果我创建一个没有命名空间的类,那么在尝试实例化类时我会使用什么命名空间?
例如,假设main是......
namespace NamespaceTests
{
class Program
{
static void Main(string[] args)
{
}
}
}
Run Code Online (Sandbox Code Playgroud)
...并假设我的无命名空间类是......
public class test
{
public string SayHello()
{
return "Hello World!";
}
}
Run Code Online (Sandbox Code Playgroud)
...并假设我有一个相同名称的另一个类,但具有默认命名空间...
namespace NamespaceTests
{
public class test
{
public string SayHello()
{
return "Hello Moon...";
}
}
}
Run Code Online (Sandbox Code Playgroud)
...我如何修改main以包含无名称空间类的实例,并调用'SayHello'来检索消息"Hello World!"?具体来说,我如何完全限定类'test'的无名称空间实例,特别是考虑到我可能有另一个类也称为'test'但具有命名空间,所以我需要区分...
我一直在寻找一个简单的操作方法,使用RequireJS,jQuery和KnockoutJS创建Visual Studio 2012 TypeScript项目的最基本示例.有几个可用的例子,但对我来说,有些比我想要的更复杂,所以我开始创建一个方法,并将其发布在这里供公众审查.我已经回答了我自己的问题,作为问答风格的知识共享练习.
对于那些不熟悉的人,这里是包含组件的快速细分...
TypeScript - 一种Visual Studio扩展,允许脚本通过JavaScript的超集语言创建.TS文件.这提供了定义与方法和变量相关联的数据类型的能力 - 否则JavaScript将丢失这些数据类型.通过这样做,编译时间检查可以确保正确使用以尝试减少运行时冲突.构建Visual Studio项目时,Visual Studio扩展会将脚本编译为实际的JavaScript.因此,这个扩展附带了它自己的编译器--tsc.exe.预计生成的JavaScript文件将部署到生产环境,而不是源代码.ts文件.
jQuery - 用于HTML文档遍历和操作,事件处理,动画和Ajax交互的JavaScript框架.
RequireJS - 依赖加载器.有时JavaScript引用会变得疯狂.这试图帮助解决这些问题.我的示例显示,即使使用了许多JavaScript文件,HTML也只引用一个 - 加载其他文件的根JavaScript文件.
KnockoutJS - 利用MVVM模式进行UI绑定.HTML视图引用视图模型中的变量和方法.视图模型是一个JavaScript对象(JavaScript文件可能是编译.ts文件的结果 - 请参阅上面的TypeScript).
DefinitelyTyped - 还包括两个DefinitelyTyped NuGet包.由于TypeScript正在尝试验证数据类型的使用情况,因此它正在执行检查以确保它知道所有引用.JavaScript比这更松散.为了满足TypeScript(当引用外部JavaScript对象时),我们需要一种方法来描述(对TypeScript)我们期望使用的对象.这些DefinitelyTyped脚本提供了此定义.它们不提供任何功能,只是TypeScript编译器的清晰度,因此它可以执行这些检查.
在下面的示例中,您将看到
/// <reference path="../Scripts/typings/requirejs/require.d.ts" />
Run Code Online (Sandbox Code Playgroud)
这就是TypeScript编译器将包含requirejs DefinitelyTyped定义文件的方式.创建这些DefinitelyTyped脚本的组织创建了一个庞大的集合.这里我们只提到两个 - KnockoutJS和RequireJS(好吧,因为这是本教程的范围)
暴露于dotnet Core.在尝试在dotnet核心应用程序中设置EntityFramework.Core的示例测试应用程序中.虽然我能够添加EntityFramework.Core NugGet包,但我找不到'添加' - >'新项' - >'数据' - >'ADO.NET实体数据模型'
EntityFramework.Core是不可能的?
EntityFramework.Core与EntityFramework 7有何不同?
在VisualStudio 2012中,创建WPF解决方案,尝试在整个解决方案上运行stylecop,输出读取
------ StyleCop 4.7 (build 4.7.59.0) started ------
Pass 1: testProject - \App.xaml.cs
Pass 1: testProject - \Modules\Administration\Models\DocumentClass.cs
Pass 1: testProject - \Modules\Administration\Models\DocumentType.cs
Pass 1: testProject - \Modules\Administration\Models\LetterGroup.cs
Pass 1: testProject - \Modules\Administration\Models\LetterType.cs
------ StyleCop cancelled ------
Run Code Online (Sandbox Code Playgroud)
为什么我收到此消息?这个过程完成了吗?我在哪里可以找到结果?
试图了解 Helm 和 Docker 容器之间的关系。
Helm 安装可以从 dockerfile 创建容器吗?
在创建ASP.Net MVC 3.0应用程序时,我可以在操作中包含OutputCache属性,并定义缓存将持续的持续时间.在此持续时间之后,导致触发操作的任何活动都将导致此缓存结果被丢弃和刷新.
我的问题是......这个缓存输出是否对所有用户会话都是全局的,或者是特定于每个会话的缓存选项.换句话说,如果user1发出请求,其中具有OutputCache属性的操作设置为1小时,则在中午(中午12:00)开始请求.User2向同一个动作发出请求,但是在中午30点(下午12:30).两个用户的缓存结果是否相同,如果是这样,user2的缓存输出是否会在下午1:00刷新?
如果我有 ac# web 应用程序项目,例如 MVC 项目,并且我创建/添加了一个 .HTML 文件,并且我正在编辑 .HTML 文件,当我启动调试器时,它不会正常启动,而是以.HTML 文件我目前正在编辑。我希望它像 MVC 项目一样正常启动,使用默认路由。
这个可以配置吗?我可以告诉 VS,即使当前上下文是一个 .HTML 页面,它也应该忽略这个事实,并开始时就好像当前上下文中没有文件一样吗?
题
如何构建AutoFac ContainerBuilder以便正确解析我的子依赖关系(假设接口的多个具体实现)?默认注册/解析将不起作用,因为我有多个子依赖项的具体实现,并且子依赖项解析依赖于主对象的分辨率.在所有情况下,我希望使用构造函数注入.
脚本
例如,假设我需要打印收据,因此我创建了一个名为IReceipt的接口,其中包含一个名为PrintReceipt()的方法.
但我需要打印3种收据
所有收据类型都有不同的格式,电子邮件收据根本不打印,而是通过电子邮件发送.所以我希望我的IReceipt能够依赖格式化器和处理器.假设我使用Process()方法创建IProcessor,它可以是打印机处理器,也可以是电子邮件处理器(打印机处理器负责打印机通信,电子邮件处理器负责与SMTP服务器通信) .此外,我创建了一个IFormatter,它可以将输入提供给处理器对象,格式化为标准收据,或礼品收据,甚至是电子邮件收据的HTML.因此,IReciept的任何具体实现的构造函数现在需要两个依赖项--IFormatter和IProcessor.
现在,根据我需要决定的根构成,我是否正在解决用于标准收据,礼品收据或电子邮件收据的IReceipt.我想调用容器Resolve()方法传递必要的参数,以便它解析正确的IReceipt.此外,我希望注册ContainerBuilder知道,如果我尝试解决IReceipt标准收据的具体实现,它需要使用正确的标准收据IFormatter解决子依赖关系,并更正标准收据IProcessor.对于礼品收据方案和电子邮件收据方案也是如此.
概括
所以 - 在所有这些 - 我的问题是 - 我如何构造ContainerBuilder,以便在设计时定义子依赖,并且单次调用Resolve()将正确识别所需的具体实现?我不是在寻求与打印机对话或发布HTML的解决方案.此问题严格适用于Autofac注册和解决方法.在不同的客户端,我使用CastleWindsor使用了这个确切的策略,但我当前的客户端使用的是Autofac.
如果我从一个新的MVC 5项目开始,在web.config设置中,customErrors mode ="on"允许共享视图'Error.cshtml'在我强制(引发)异常时显示,但它只显示以下文本.. .
错误.
处理您的请求时发生错误.
如何将信息传递到此视图以显示更多相关信息,例如发生了什么错误?如果我使用Global.asax方法,我可以使用此视图吗?
protected void Application_Error()
Run Code Online (Sandbox Code Playgroud)
?
c# ×4
asp.net-mvc ×3
.net ×1
.net-core ×1
asp.net ×1
autofac ×1
dayofweek ×1
docker ×1
dockerfile ×1
html ×1
java ×1
java-8 ×1
java-time ×1
javascript ×1
knockout.js ×1
kubernetes ×1
mvvm ×1
namespaces ×1
outputcache ×1
razor ×1
requirejs ×1
stylecop ×1
typescript ×1