小编gmn*_*gmn的帖子

WPF DataTemplate绑定取决于属性的类型

我有一组绑定到分层数据模板的对象,我的每个对象都有一个属性(我们称之为属性"A")属于某种类型.这种类型在每个对象之间变化.

如果数据模板包含图像和某些文本,那么根据属性"A"的类型更改模板中显示的图像的最佳方法是什么.

我知道我可以把它放到转换器中并在代码中手动进行绑定转换,但是在WPF中提供了所有绑定工具,我认为这可能是更好的方法.

c# data-binding wpf xaml

18
推荐指数
1
解决办法
3万
查看次数

在select语句中使用命名元组

有没有更好的方法使用var目标变量在C#7中选择一个命名元组?我必须在示例1中做错事,或者完全误解某些事情.我似乎必须明确设置目标类型才能执行此操作.

//1. Fails to compile with "incorrect number of type parameters" issue.
var tuples = source.Select<(int A, int B)>(x => (x.A, x.B));

//2. Compiles
IEnumerable<(int A, int B)> tuples = toCheck.Select(x => (x.A, x.B));

//3. Compiles
var tuples = new HashSet<(int A, int B)>(source.Select(x => (x.A, x.B)));
Run Code Online (Sandbox Code Playgroud)

c# generics tuples c#-7.0

15
推荐指数
1
解决办法
3485
查看次数

SQL Server Varbinary(max):从varbinary字段中选择一个字节子集

在SQL Server 2008中从varbinary(MAX)字段(不使用FileStreams)读取部分二进制数据的最有效方法是什么?

将数据写入列时,VarBinary.Write()函数在T-SQL中可用,允许以递增方式将字节写入字段,但似乎没有类似的函数可用于读取数据.

我知道.Net中的DataReader.GetBytes()方法会选择你要求的字节,但这会带来性能开销吗?也就是说,sqlserver中的select会读取数据库中的所有字节,然后给getBytes()方法提供所有这些字节,以便获取从它们请求的字节子集吗?

谢谢你的帮助.

.net sql-server varbinary sql-server-2008

12
推荐指数
1
解决办法
9031
查看次数

使用AutoFixture作为SutFactory时,定义/管理具有独立值的相同类型的1个构造函数参数

使用AutoFixture作为SutFactory,我可以看到,如果我注册或冻结某个类型的值,那么该值将用于该类型的所有后续用法.但是,如果我在构造函数中有一个具有两个相同类型的参数的类,例如:

public class ClassA
{
    public double ParameterA { get; private set;}
    public double ParameterB { get; private set;}

    public ClassA(double parameterA, double parameterB)
    {
       ParameterA = parameterA;
       ParameterB = parameterB;
    }

    public void Execute(ClassB object)
    {
        object.Value = (object.Value * ParameterA) /ParameterB;
    }
}
Run Code Online (Sandbox Code Playgroud)

有哪些策略可以使用自动混合为参数A和参数B注入唯一的预定义值,以便测试计算值?

*不幸的是我不能在这里分享我的确切场景,但它使用命令模式操作另一个对象,所以设置parameterA和parameterB维护设计的唯一方法是将它们两者都注入,而构造函数是最好的方法在这种情况下这样做.

c# tdd autofixture

8
推荐指数
3
解决办法
1115
查看次数

SQLite连接优化

如果您有查询,例如:

select a.Name, a.Description from a
inner join b on a.id1 = b.id1
inner join c on b.id2 = c.id2
group by a.Name, a.Description
Run Code Online (Sandbox Code Playgroud)

如果您认为每个表中有超过100,000行,那么在SQLite中为此查询编制索引的最佳列是什么?

我问的原因是,当我应用相同的优化时,我没有通过我希望从另一个RDBMS(SQL Server)获得与组的查询的性能.

我是否正确地认为在SQLite中的查询中的单个表上引用的所有列都需要包含在单个复合索引中以获得最佳性能?

sql sqlite indexing query-optimization

6
推荐指数
1
解决办法
7785
查看次数

FastMember列顺序保存

使用 TypeAccessor.Create FastMember 时似乎总是返回按字母顺序排序的列列表。是否可以告诉它保留类中列的顺序?

例如:

var testClass = new { B = "1", A = "2" };
Run Code Online (Sandbox Code Playgroud)

将从 GetMembers 返回 A 列,然后返回 B 列,如果可能的话,我想让它保留 B 列然后 A 的顺序。

c# reflection fastmember

5
推荐指数
2
解决办法
1439
查看次数

仅在角度通用中将组件标记为客户端

使用ASPNet Angular SPA模板我试图导入NGX-Charts,但它们不能与服务器端预渲染一起使用.所以我只想通过将NGX图表模块导入app.module.browser.ts来使它们渲染客户端.

但是,当我这样做时,我得到模板解析错误:

无法绑定到'view',因为它不是'ngx-charts-advanced-pie-chart'的已知属性.

是否有正确的方法将组件标记为仅在浏览器中呈现?如果存在,这似乎没有很好的记录.

或者,是否有正确的方法在角度通用应用程序中引用NGX-Charts?

single-page-application typescript .net-core angular ngx-charts

5
推荐指数
1
解决办法
299
查看次数

使用存储库模式处理集合时的澄清

如果你有两个处理持久性关系数据库的存储库,一个处理"Person"对象的personrepository,一个处理"Address"对象的地址存储库,一个person对象有一个地址集合(可能是延迟加载的).显然,personrepository将用于持久更改person对象,而addressrepository将用于持久更改地址对象,但是对于持久更改人员地址集合会有什么责任呢?

有哪些策略可用于持久修改人员对象地址集合返回数据库?那个责任在哪里存放在存储库中(即使在数据库中它也是存储链接到某个人的地址)它是个人存储库吗?

我应该提到这不是使用ORM.

感谢您的任何帮助,任何策略/澄清将不胜感激.

orm design-patterns domain-driven-design repository-pattern

4
推荐指数
1
解决办法
161
查看次数

未找到EasyNetQ字段'RabbitMQ.Client.ConnectionFactory.AutomaticRecoveryEnabled'

使用EasyNetQ v0.63.0.448,RabbitMqClient v4.0.2和RabbitMq服务器3.6.5,当我尝试创建这样的总线时......

   bus = RabbitHutch.CreateBus(new ConnectionConfiguration()
            {
                Hosts = new[] { new HostConfiguration() { Host = hostName, Port = port } },
                UserName = username,
                Password = password,
            }, x => { }).Advanced;
Run Code Online (Sandbox Code Playgroud)

我收到了错误:

"未找到字段'RabbitMQ.Client.ConnectionFactory.AutomaticRecoveryEnabled'."

这是easynetq和这个版本的Rabbit之间的潜在不兼容性,还是我需要在某个地方对API进行更改?

c# rabbitmq easynetq

3
推荐指数
1
解决办法
1439
查看次数

MiniProfiler - 在控制台应用程序中复制 Web 视图信息

在控制台应用程序中使用迷你分析器时,是否有可能获得与在 Web 应用程序中获得的相同级别的信息?理想情况下,我只想在控制台中自行托管 Web UI,但看起来这是不可能的。

我的主要目标是获取在调用时执行的 sqlqueries 及其参数/运行时间。我已经尝试过 RenderPlainText() 解决方案,它远没有 webview 那么详细,而且似乎没有一个钩子可以用来在发生有趣的事情时记录其内容。

.net c# console miniprofiler

3
推荐指数
1
解决办法
300
查看次数

Xamarin谷歌地图空白

我一直在关注:

https://developer.xamarin.com/guides/android/platform_features/maps_and_location/maps/obtaining_a_google_maps_api_key/

https://developer.xamarin.com/guides/android/platform_features/maps_and_location/maps/obtaining_a_google_maps_api_key/

为了在Android应用中使用谷歌地图.我根本无法在我的应用程序中显示地图.它始终显示空白页面.我也没有看到任何错误.

我有:

  1. 为我的Android清单添加了必要的权限
  2. 在线启用apis页面中的API.
  3. 基于使用本地调试密钥库添加凭据
  4. 在我的主活动页面上将地图添加为地图片段.

在线的所有内容都指向调试密钥不正确,但我必须尝试使用​​此功能,但仍然无法正常工作.可能会以某种方式选择另一个吗?

此外,我不确定其重要性,但是当我尝试访问时,mapfragment在恢复时总是为空.

密钥库命令:

keytool -list -v -keystore "C:\Users\<My User folder>\AppData\Local\Xamarin\Mono for Android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Run Code Online (Sandbox Code Playgroud)

清单中的权限(使用AppName和密钥隐藏):

  <!-- Google Maps for Android v2 requires OpenGL ES v2 -->
    <uses-feature android:glEsVersion="0x00020000" android:required="true" />
    <!-- We need to be able to download map tiles and access Google Play Services-->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- Allow the application to access Google web-based services. -->
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <!-- Google Maps for Android …
Run Code Online (Sandbox Code Playgroud)

c# android google-maps xamarin

2
推荐指数
1
解决办法
2507
查看次数