我是TFS的新手.假设我有2个连续版本的变更集:600,601.如果我右键单击601并选择Rollback Entire changeset,那是否意味着更改集601应该与600完全相同?
我问这个是因为在这样做之后,我尝试比较了2个变更集,看到它们仍然有很大不同.关于Rollback Entire变更集做了什么让我很困惑?
通过右键单击文本框 - >选择表达式,表达式窗口不需要是可以打开的表达式窗口.文本框具有一些表达式窗口,这些窗口是与字体相关的表达式窗口,与对齐相关的表达式窗口,与可见性相关的表达式窗口,与边界相关的表达式窗口以及与值相关的表达式窗口.
在与值相关的表达式窗口中,我不需要引用当前文本框的值,因为它正是表达式用于文本框的值.但是我想知道是否有办法在文本框的其他表达式窗口中引用此值?或者只是使用文本框的确切值表达式?
例如,文本框的值表达式=Fields!ID.Value在另一个表达式窗口(例如,颜色表达式窗口)中,我希望通过某个关键字引用此值,如果可能的话=IIF(this.Value > 0, "Green", "Red").目前我必须使用文本框的确切表达式,其颜色的表达式如下所示=IIF(Fields!ID.Value > 0, "Green", "Red").
我希望有一种简单的方法可以引用当前文本框的值,而不是通过它的确切表达式,因为有时表达式太长而无法重新键入它,甚至复制 - 粘贴表达式并不比短关键字更好.
谢谢!
我无法理解IsEmpty这段代码(Path=Text.IsEmpty)(来自水印TextBox)的来源:
<Grid Grid.Row="0" Background="{StaticResource brushWatermarkBackground}"
Style="{StaticResource EntryFieldStyle}" >
<TextBlock Margin="5,2" Text="Type to search ..." Foreground="Gray"
Visibility="{Binding ElementName=entry, Path=Text.IsEmpty,
Converter={StaticResource BooleanToVisibilityConverter}}"/>
<TextBox Name="entry" Background="Transparent"/>
</Grid>
Run Code Online (Sandbox Code Playgroud)
你可以看到一个字符串没有任何IsEmpty属性.A DependencyProperty也没有任何IsEmpty成员.我甚至尝试在IsEmpty对象浏览器窗口中搜索,但没有任何相关结果解释代码.
你能解释一下IsEmpty这里的参考吗?(关于它的任何参考链接都很棒).
谢谢!
首先,我认为第一次只是更清楚地看到阻塞的条件.对于下一次,它会以某种方式稍微阻止UI,但不会像不使用异步时那样明显.
我可以这么说,因为我可以看到使用它QueryAsync和一个简单的包装代码之间的区别,Task.Run(() => connection.Query<T>)它的工作正常,当然比QueryAsync(在UX中)要好得多.
代码很简单,就像这样:
public async Task<IEnumerable<Item>> LoadItemsAsync(){
using(var con = new OracleConnection(connectionString)){
var items = await con.QueryAsync<dynamic>("someQuery");
return items.Select(e => new Item { ... });
}
}
//in UI thread, load items like this:
var items = await LoadItemsAsync();
Run Code Online (Sandbox Code Playgroud)
代码工作正常(没有阻止UI)是这样的:
public async Task<IEnumerable<Item>> LoadItemsAsync(){
using(var con = new OracleConnection(connectionString)){
var items = await Task.Run(() => con.Query<dynamic>("someQuery"));
return items.Select(e => new Item { ... });
}
}
//in UI …Run Code Online (Sandbox Code Playgroud) 我以前没有做过任何基于LDAP的身份验证,而且之前我没有使用过任何LDAP服务器.所以我需要一个免费的在线LDAP服务器来玩,我发现这个https://www.forumsys.com/tutorials/integration-how-to/ldap/online-ldap-test-server/
但是我的代码不起作用(或者信息已经变得无效,我不确定),authen的结果总是假的,这是我的代码:
path = "ldap.forumsys.com:389/dc=example,dc=com";
using (var pc = new PrincipalContext(ContextType.Domain, null, path))
{
//this always returns false
var ok = pc.ValidateCredentials("read-only-admin", "password");
}
Run Code Online (Sandbox Code Playgroud)
你能让它在你身边吗?或者至少请断言信息无效,在这种情况下如果可能的话请给我一些其他信息(来自其他免费的LDAP服务器进行测试).
我正在尝试将这个简单的类转换为IL代码:
public class IL {
Dictionary<string, int> props = new Dictionary<string, int>() { {"1",1} };
}
Run Code Online (Sandbox Code Playgroud)
事实上,ILDasm在尝试使用Emit动态创建类之前,我曾经知道IL指令.结果显示:
.class public auto ansi beforefieldinit IL
extends [mscorlib]System.Object
{
.field private class [mscorlib]System.Collections.Generic.Dictionary`2<string,int32> props
.method public hidebysig specialname rtspecialname
instance void .ctor() cil managed
{
//
.maxstack 4
.locals init (class [mscorlib]System.Collections.Generic.Dictionary`2<string,int32> V_0)
IL_0000: ldarg.0
IL_0001: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2<string,int32>::.ctor()
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: ldstr "1"
IL_000d: ldc.i4.1
IL_000e: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2<string,int32>::Add(!0,
!1)
IL_0013: ldloc.0 …Run Code Online (Sandbox Code Playgroud) 对于直接使用OpenCV的C++开发人员来说,这一点很简单.然而我正在使用的是Emgu(.NET的OpenCV包装器),在最新版本中,我们使用CvInvoke.FindContours返回void 的方法,输出结果通过参数引用传递并且是类型VectorOfVectorOfPoint.
这是一个简单的电话:
//outputResult is a VectorOfVectorOfPoint
CvInvoke.FindContours(inputImage, outputResult, null, RetrType.Tree,
ChainApproxMethod.ChainApproxSimple);
Run Code Online (Sandbox Code Playgroud)
对于RetrType.List模式,我们可以将结果转换为某些数组,并轻松遍历所有轮廓.然而,在这里,我想浏览树中的所有轮廓.我想我们必须使用指针(通过Ptr输出结果的属性访问)对本机(不安全)C++代码执行某些操作.但我想知道是否有更适合.NET的解决方案.如果即使使用指针是唯一的解决方案,我仍然不知道如何深入研究Ptr以在轮廓树中导航.
与Emgu安装一起使用的示例代码使用代码片段CvInvoke.FindContourTree(并返回a int[,]).
我想让服务器全天保持运行(活动)(至少到可以通过调度回收的午夜),所以我发现设置Start Mode可以AlwaysRunning帮助实现这一点。但还有另一个选项似乎与此相冲突AlwaysRunning,那就是Idle Timeout Action。
Idle Timeout仍保持默认值分钟20,但Idle Timeout Action设置为Terminate。所以我不太确定哪个设置会取代另一个设置?在这种情况下,我认为Start Mode应该覆盖Idle Timeout Action.
我正在使用 Visual Studio 17(版本 15.8.5),我的项目面向 .NET Framework 4.8,我尝试设置 C# 版本以使用(通过“属性”窗口中的“构建”选项卡)C# 7.3(这是可以从下拉列表)。但是,构建项目会报告问题标题中的失败。我甚至试过7.0和C# latest minor version,所有这些报告故障也是如此。
貌似环境支持最高版本6(C#6.0)?
我试过安装两者Microsoft.Net.Compilers v3.6.0,Microsoft.Net.Compilers.Toolset v3.6.0但它没有改变。
我想像以下简单代码一样使用模式匹配功能:
object o ...
if(o is int c){
//do something with c (cast to int) ...
}
Run Code Online (Sandbox Code Playgroud)
更新:
奇怪的是,如果我创建一个全新的 ASP.NET MVC 项目,它只是使用 C# 7.3 集编译正常。所以看起来我正在处理的特定项目有问题。为了更好的诊断,我想通过这个链接在这里分享这个项目https://sites.google.com/site/ngaodaantoi/files/WebApiAuth.zip?attredirects=0&d=1
建议您使用 VS 2017 来帮助可能重现该问题。
我不太确定这是否是我使用的 SQLite 版本的问题。但实际上我没有直接使用本机 SQLite (dll),我使用的是System.Data.SQLite版本1.0.108.0,看起来这是我的应用程序针对的 .NET 4.5 的唯一版本(最新)。
所以我想知道那个版本是否System.Data.SQLite支持ON CONFLICT?
这只是基本查询ON CONFLICT:
INSERT INTO CUSTOMER(CUSTOMER_ID, CUSTOMER_NAME) VALUES('C1','N1')
ON CONFLICT(CUSTOMER_ID)
DO UPDATE SET CUSTOMER_NAME=excluded.CUSTOMER_NAME
Run Code Online (Sandbox Code Playgroud)
但它会抛出一个错误,如下所示:
靠近“ON”:语法错误:
我对 Android Studio 和 Android 编程都很陌生。我刚刚阅读了第一个常见 Intent 教程,它是关于AlarmClock. 我尝试编写一个简单的代码来测试该意图,但它无法处理抛出的异常SecurityException,堆栈跟踪如下所示:
\n05-20 15:36:25.010 2342-2342/com.viphalong.helloandroid E/AndroidRuntime: 致命异常: main\n 进程: com.viphalong.helloandroid,PID: 2342\n java.lang.RuntimeException: 无法启动活动ComponentInfo{com.viphalong.helloandroid/com.viphalong.helloandroid.MainActivity}:java.lang.SecurityException:权限拒绝:启动意图{ act=android.intent.action.SET_ALARM cmp=com.android.deskclock/.HandleApiCalls(有extras) } 来自 ProcessRecord{ad271560 2342:com.viphalong.helloandroid/u0a52} (pid=2342, uid=10052) 需要 com.android.alarm.permission.SET_ALARM\n 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java :2184)\n 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)\n 在 android.app.ActivityThread.access$800(ActivityThread.java:135)\n 在 android.app.ActivityThread$H.handleMessage (ActivityThread.java:1196)\n 在 android.os.Handler.dispatchMessage(Handler.java:102)\n 在 android.os.Looper.loop(Looper.java:136)\n 在 android.app.ActivityThread。 main(ActivityThread.java:5001)\n 在 java.lang.reflect.Method.invokeNative(本机方法)\n 在 java.lang.reflect.Method.invoke(Method.java:515)\n 在 com.android。 Internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)\n 位于 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)\n 位于 dalvik.system.NativeStart.main(本机方法) )\n 原因为:java.lang.SecurityException:权限拒绝:从 ProcessRecord{ad271560 2342:com 开始 Intent { act=android.intent.action.SET_ALARM cmp=com.android.deskclock/.HandleApiCalls (has extras) }。 viphalong.helloandroid/u0a52} (pid=2342, uid=10052) 需要 …
java android android-alarms android-permissions android-studio
我想知道DataGridView可以呈现 OK的最大行数是多少,我的意思是 UI 可用且响应足够快。我想知道这一点,因为我有一个大约 1400 行的表(不是现在,但将来会如此),我想知道它是否可以呈现正常,或者我应该在支持某些导航控件的情况下部分加载行。
PS:我不需要确切的数字,只需要根据您的经验得出的数字。谢谢!
首先,我担心这里的内存泄漏问题.因为我所做的是使用一些Dictionary来存储元数据与对象本身的Key.所以我可以通过传入对象来查找元数据(应该是动态的).
请注意,此处的对象没有任何GUID来帮助标识自身,识别它的唯一方法是通过其实例.这种存储看起来很像DependencyObjectWPF中的内容.我们可以声明DependencyProperty(附加属性)来扩展DependencyObject(元数据包含在附加属性中).
这是我有的:
Dictionary<object, SomeMetaData> _metadataLookup = new Dictionary<object,SomeMetaData>();
//to store metadata
_metadataLookup[someObject] = someMetaData;
//to get metadata
SomeMetaData someMetaData;
_metadataLookup.TryGetValue(someObject, out someMetaData);
Run Code Online (Sandbox Code Playgroud)
如果someObject生命周期与使用范围的生命周期相同,那就没问题了_metadataLookup.但是如果someObject(存储之后_metadataLookup)应该销毁(逻辑上变为未使用)会怎么样?我们也必须手动将其删除_metadataLookup,否则会出现内存泄漏.
我正在寻找一个更好的解决方案来解决这个问题,意外地忘记手动删除对象或者根本不知道何时应该删除对象是一个问题.谢谢.
c# ×10
winforms ×2
.net ×1
android ×1
asp.net ×1
asp.net-mvc ×1
asynchronous ×1
blocking ×1
c#-7.0 ×1
caching ×1
changeset ×1
contour ×1
dapper ×1
datagridview ×1
dynamic ×1
emgucv ×1
iis ×1
il ×1
java ×1
ldap ×1
localreport ×1
memory-leaks ×1
metadata ×1
opencv ×1
performance ×1
rdlc ×1
reflection ×1
report ×1
sqlite ×1
tfs ×1
wpf ×1
xaml ×1