可能重复:
Copy-local如何工作?
我有以下情况:
所以我的问题是:
谢谢你,帕维尔
编辑1 :(在Marc Gravell回复后)
@Marc Gravell:你的回答让我深思熟虑,因为我可以发誓我总能在主应用程序的bin目录中看到间接依赖的程序集.恕我直言,我不同意你的意见 - 尽一切应有的尊重:)
当然,引用不是物理级联的(我们正在讨论与类,接口等的强关系) - 这正是我在构建OLAF.Tools库时想要实现的.该库提供了一个抽象级别,它包含工厂,一个工厂接受作为参数字符串并返回接口.该接口的一个特定实现使用Microsoft.Data.SqlXml组件.因此,OLAF.Generator使用位于OLAF.Tools中的接口,但不知道Microsoft.Data.SqlXml中的组件.
除此之外(我想我们都知道我试图在前一段中解释的内容),在构建应用程序时,应复制依赖程序集(如果Copy Local设置为TRUE).我刚刚编写了示例应用程序,Project B lib引用了Project A lib,而Project C(控制台应用程序)引用了Project B.在Project C的bin目录中,我可以看到所有:Project A.dll,Project B.dll&Project C.exe.因此,在讨论的场景中,Microsoft.Data.SqlXml不会在OLAF.Generator bin文件夹中结束的原因与该程序集本身有关.
编译器/ visual studio是否知道Microsoft.Data.SqlXml位于自动探测的目录中(或者它在GAC中),这就是为什么不复制该程序集的原因?
编辑2:我刚刚检查了GAC,事实上,Microsoft.Data.SqlXml.dll安装在GAC中.
我正在编写一些基于SessionID的日志代码...
但是,当我注销(调用Session.Abandon)并再次登录时,SessionID仍然是相同的.基本上我的PC上的每个浏览器都有自己的会话ID"附加",并且由于某种原因它不会改变:/
有什么想法发生了什么?
我的Session配置如下所示:
<sessionState
mode="InProc"
timeout="1" />
Run Code Online (Sandbox Code Playgroud)
谢谢,Paweł
我有一个多对多的表,让我们说:
PersonJob(personId,jobId)
Run Code Online (Sandbox Code Playgroud)
with clustered index(personId,jobId).
问题是:
如果在SQL中的某个地方,我会进行如下查询:
SELECT *
FROM PersonJob JOIN Job ON PersonJob.jobId = Job.jobId
.......
Run Code Online (Sandbox Code Playgroud)
是否会利用该聚集索引在PersonJob表中查找具有特定jobId的记录?或者我最好在PersonJob表的jobId列上创建新的非群集非唯一索引?
谢谢帕维尔
我想知道,.NET中的集合实现有什么不同.
例如,我经常使用List<int>etc来存储项目列表.但是我只需要一个容器用于物品,我想我不需要所有的功能List.我只需要一个具有put方法的容器,并使客户端代码能够迭代容器.
是否有更快,更轻量级的集合实现IEnumerable<T>在.NET 中实现?
更新到Bootstrap 3.1.0后,编译较少的文件时出现此错误:
ParseError:mixins.less中的第648行语法错误:648:25 647
padding-right: (@grid-gutter-width / 2); 648 &:extend(.clearfix all); 649 }
Run Code Online (Sandbox Code Playgroud)
我使用凹版,版本:1.1.9.我该如何解决?
我正在深入研究随谷歌Chrome一起提供的性能工具,因为我正试图了解性能改进技术.我正在玩Timeline选项卡,我发现在我的页面上,First Paint事件发生在DOMContentLoaded事件之前.我读了一些文章,据说当浏览器开始向用户显示内容的第一时刻必须在DOMContentLoaded之后.有人可以解释一下这是真的吗?
在使用DateTime字段序列化对象后JavaScriptSerializer,我看到该DateTime字段如下所示:
EffectiveFrom: "/Date(1355496152000)/"
Run Code Online (Sandbox Code Playgroud)
如何将此字符串转换为Javascript Date对象?
在我的AuthenticateRequest事件处理程序中,我设置了Thread的主体.这是我的IHttpModule的一部分:
public void Init(HttpApplication context)
{
context.AuthenticateRequest += AuthenticateRequest;
}
private void AuthenticateRequest(object sender, EventArgs e)
{
var principal = CreatePrincipal();
HttpContext.Current.User = principal;
}
Run Code Online (Sandbox Code Playgroud)
但我有一个程序集,不应该访问System.Web,所以我不能使用HttpContext.Current.User,但我需要访问当前主体.我的第一个想法是将我的方法改为:
System.Threading.Thread.CurrentPrincipal = HttpContext.Current.User = principal;
Run Code Online (Sandbox Code Playgroud)
并在需要时使用Thread.CurrentPrincipal.
但据我记得,在线程本地存储中存储请求特定内容是不安全的,因为多个线程可以处理相同的请求,所以我猜它与Thread.CurrentPrincipal相同.或不?
我正准备参加Java考试,我正在阅读"OCA Java SE 8程序员学习指南(考试1Z0-808)".在运营商部分,我发现了这句话:
移位运算符:移位运算符采用两个操作数,其类型必须可转换为整数基元.
我觉得很奇怪,所以我用很长时间测试它:
public class HelloWorld{
public static void main(String []args){
long test = 3147483647L;
System.out.println(test << 1);
}
}
Run Code Online (Sandbox Code Playgroud)
并且它工作,没有编译器错误和结果是正确的.这本书有错误还是我误解了书中的引用?
我正在尝试利用AngularJS的新发现.其中之一是:
$compileProvider.debugInfoEnabled(false);
Run Code Online (Sandbox Code Playgroud)
问题是我的一些代码依赖于angular.element(el).scope()调用.所以他们将不再工作.
有没有办法重写angular.element(el).scope()表达式以某种方式获得元素的范围而不启用调试信息?
.net ×3
asp.net ×3
c# ×2
angularjs ×1
bit-shift ×1
c#-4.0 ×1
httpcontext ×1
indexing ×1
java ×1
java-8 ×1
javascript ×1
less ×1
msbuild ×1
sessionid ×1
sql-server ×1