我是mef的初学者,所以我有一个问题:)我有以下内容:
[PartCreationPolicy(CreationPolicy.Shared)]
[Export(typeof(SharedExport))]
public class SharedExport : INPCBase
{
[ImportMany(typeof(INonShared),RequiredCreationPolicy = CreationPolicy.NonShared)]
private IEnumerable<Lazy<INonShared,Dictionary<string,object>>> fac;
...
public void Open()
{
foreach (var lazy in fac)
{
this.Muster.Add(lazy.Value);
}
}
Run Code Online (Sandbox Code Playgroud)
导入的所有类都标记为非共享.
[PartCreationPolicy(CreationPolicy.NonShared)]
[Export(typeof(INonShared))]
[ExportMetadata("Muster","030")]
public sealed class NonShared1 : INPCBase, INonShared
{
public NonShared1()
{
Debug.WriteLine("ctor NonShared1" + this.GetHashCode().ToString());
}
#region Implementation of INonShared
public string Displayname
{
get { return "Muster 030 "+ this.GetHashCode().ToString();
}
}
#endregion
}
Run Code Online (Sandbox Code Playgroud)
现在我的问题:当Open()执行时,是否应该始终创建一个新的NonShared1实例?我总是一样的.
新手问题,但我真的不明白为什么有很多操作来构建clojure中的地图.
你有conj,assoc和merge,但他们似乎或多或少做同样的事情?
(assoc {:a 1 :b 2} :c 3)
(conj {:a 1 :b 2} {:c 3})
(merge {:a 1 :b 2} {:c 3})
Run Code Online (Sandbox Code Playgroud)
真正的区别是什么,为什么所有这些方法在做或多或少相同的事情时都需要?
鉴于:
static TDest Gimme<TSource,TDest>(TSource source)
{
return default(TDest);
}
Run Code Online (Sandbox Code Playgroud)
为什么我不能这样做:
string dest = Gimme(5);
Run Code Online (Sandbox Code Playgroud)
没有得到编译器错误:
error CS0411: The type arguments for method 'Whatever.Gimme<TSource,TDest>(TSource)' cannot be inferred from the usage. Try specifying the type arguments explicitly.
该5可以推断为int,但有编译器将不会/无法解决的返回类型的限制string.我在几个地方读到这是设计但没有真正的解释.我在某处读过这可能会在C#4中发生变化,但事实并非如此.
任何人都知道为什么不能从泛型方法中推断出返回类型?这是其中一个问题,答案是如此明显,它正盯着你的脸?我希望不是!
我正在使用以下场景:我有一个带热点的图像映射.当您将鼠标悬停<area>在图像地图上时,会显示一个<div class="info-panel">.这个div重叠<area>,所以div隐藏在mouseleave上<div class="info-panel">.
这主要是有效的,但在奇怪的情况下,例如,如果你去弹道并且移动鼠标太快,div就会保持不变.我认为它可能是在小<area>和实际<div>相交的情况下.我不担心,只有客户指出它是一个错误.
我能想到解决这个问题的唯一万无一失的方法是,如果信息窗口可见,请检查鼠标移动.如果是,那么检查鼠标当前是否在它上面 - 如果不是,则隐藏它.这将确保如果鼠标悬停在信息窗口上,则信息窗口永远不可见.
我的问题是:如何检查当前鼠标位置是否在信息窗口上?请记住,这是异常而不是规则,我不确定信息窗口是否可见?
iphone Pandora应用程序(在ios-4中)支持控制来自锁定屏幕的音频,如播放,暂停,下一个和上一个.
如何从锁定屏幕获取音乐播放器控制操作.
任何人都可以给我一个关于从锁定屏幕如pandora app获取这些控件的动作到本机应用程序的想法.
是空的Arraylist(以null为其项)被视为null?所以,基本上下面的陈述是正确的:
if (arrayList != null)
Run Code Online (Sandbox Code Playgroud)
谢谢
我正在尝试使用连接池库连接到我的数据库:DBPool.这是我的源代码.
package DB;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.sql.ConnectionPoolDataSource;
import snaq.db.ConnectionPool;
import com.mysql.jdbc.Driver;
/**
* @author decorrea
*/
public class DBUtils {
public static String jdbc_driver_name = "com.mysql.jdbc.Driver";
private static String server_name ;
private static String database;
private static String username;
private static String password;
public String getServer_name() {
return server_name;
}
public void setServer_name(String serverName) {
server_name = serverName;
}
public String getDatabase() {
return database;
}
public void setDatabase(String database) {
this.database = …Run Code Online (Sandbox Code Playgroud) 我已经阅读了一些文章并在谷歌上搜索过,但我没有做到.
我的问题是关于font-face.
在Android中,只有4个属性"android:typeface":Normal,Sans,Serif,Monospace.
那么在我的应用程序中使用"Verdana"需要做些什么呢?
请建议我在Android应用程序中使用此字体的正确方法.
我已经在计算机上的C:\ Program文件中安装了7-zip 4.65。我想在C#代码中使用它来压缩文件。文件名将由用户动态提供。谁能在C#代码中提供有关如何使用7zip的示例代码?