问题列表 - 第27738页

使用LINQ动态映射(或构建投影)

我知道我可以使用投影映射两个对象类型LINQ,如下所示:

var destModel = from m in sourceModel
               select new DestModelType {A = m.A, C = m.C, E = m.E}
Run Code Online (Sandbox Code Playgroud)

哪里

class SourceModelType
{
    string A {get; set;}
    string B {get; set;}
    string C {get; set;}
    string D {get; set;}
    string E {get; set;}
}

class DestModelType
{
    string A {get; set;}
    string C {get; set;}
    string E {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我想制作类似通用的东西来做这件事,我不知道具体处理我正在处理的两种类型.所以它会走"Dest"类型并匹配匹配的"Source"类型..这可能吗?另外,为了实现延迟执行,我希望它只返回一个IQueryable.

例如:

public IQueryable<TDest> ProjectionMap<TSource, TDest>(IQueryable<TSource> sourceModel)
{
   // dynamically build the LINQ projection based on the properties in …
Run Code Online (Sandbox Code Playgroud)

linq mapping map-projections

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

拥有仅使用静态方法的模型是否有意义?

我有一个我正在研究的ASP.NET MVC 2项目,我想知道我应该在哪里放置一些代码.

我目前有一个UsersModel,它由一堆针对我的数据上下文操作的静态方法组成.

这些方法包括诸如:UserExistsInDatabase,UserIsRegisteredForActivity,GetUserIdFromFacebookId等等等等.

这些方法应该在UsersModel类中,还是更适合模型上下文之外的用户帮助程序类?

欢呼任何指针.

architecture asp.net-mvc-2

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

表单提交不在Firefox中工作,但在IE中工作正常

当我点击子页面的提交按钮时,我想提交我的父页面.在我的子页面中,我将代码编写为

string scriptString = "<script language=JavaScript> window.opener.document.forms(0).submit(); </script>";

            // ASP.NET 2.0

            if (!Page.ClientScript.IsClientScriptBlockRegistered(scriptString))
            {

                Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "script", scriptString);

            }
Run Code Online (Sandbox Code Playgroud)

它在IE中工作正常,但在Firefox中不起作用.这可能是另一种方法吗?

预先感谢

c# asp.net firefox form-submit

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

是否仅在编译时检查过时属性?

我想知道只在运行时检查过时的属性?

认为你有两个组件.程序集A使用程序集B中的方法.之后,我们将程序集B中的方法标记为过时,这会在编译程序集A时导致编译时错误.

到目前为止没有问题,但问题是旧的A组件是否继续与新的B组件一起工作?谢谢

.net c# attributes obsolete

11
推荐指数
2
解决办法
1170
查看次数

从外部javascript文件访问PHP var

我可以使用Javascript访问PHP var,如下所示:

<?php
    $fruit = "apple";
    $color = "red";
?>

<script type="text/javascript">
    alert("fruit: " + "<?php echo $fruit; ?>"); // or shortcut "<?= $fruit ?>"
</script>
Run Code Online (Sandbox Code Playgroud)

但是如果我想使用外部JS文件怎么办:

<script type="text/javascript" src="externaljs.js"></script>
Run Code Online (Sandbox Code Playgroud)

externaljs.js:

alert("color: " + "<?php echo $color; ?>");
Run Code Online (Sandbox Code Playgroud)

javascript php variables external

52
推荐指数
4
解决办法
7万
查看次数

数据库还原后Service Broker无法正常工作

在服务器上设置了一个正常运行的Service Broker,我们正在迁移到新服务器,但我似乎无法在新机器上设置Service Broker.

已经做了明显的(对我来说)像DB上的启用代理,丢弃路由,服务,合同,队列甚至消息类型并重新添加它们,使用STATUS ON设置ALTER QUEUE

SELECT*FROM sys.service_queues

给我一个队列列表,包括我自己的两个队列,显示为activation_enabled,receive_enabled等.

不用说队列不起作用.当我把消息丢进他们时,没有任何东西进入,什么都没有出来.

有任何想法吗?我确信我错过了一些非常明显的东西......

sql-server service-broker

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

将System.Drawing.Graphics保存到png或bmp

我有一个我在屏幕上绘制的Graphics对象,我需要将其保存到png或bmp文件中.图形似乎不直接支持,但必须以某种方式.

步骤是什么?

c# graphics

20
推荐指数
3
解决办法
6万
查看次数

ASP.NET缓存最大大小

您可以拥有的ASP.NET缓存(单个服务器上的部署者或Web场外的进程外)的最大大小是多少?

如果您可以拥有多大的ASP.NET缓存限制,是否有解决方法来增加该限制?

谢谢詹姆斯

asp.net caching

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

静态const char*和const char之间的区别*

有人可以解释下面如何处理2个代码片段的区别吗?它们肯定会编译成不同的汇编代码,但我试图理解代码的行为方式可能不同.我知道字符串文字被抛入只读内存并且实际上是静态的,但是它与下面的显式静态有何不同?

struct Obj1
{
    void Foo()
    {
        const char* str( "hello" );
    }
};
Run Code Online (Sandbox Code Playgroud)

struct Obj2
{
    void Foo()
    {
        static const char* str( "hello" );
    }
};
Run Code Online (Sandbox Code Playgroud)

c++ string static char

15
推荐指数
3
解决办法
2万
查看次数

iPhone - dequeueReusableCellWithIdentifier用法

我正在开发一款iPhone应用程序,它有一个非常大的UITableView,其中包含从网络上获取的数据,因此我正在尝试优化其创建和使用.

我发现这dequeueReusableCellWithIdentifier非常有用,但是在看到很多使用它的源代码之后,我想知道我对这个函数的用法是不是很好.

这是人们通常做的事情:

UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];

if (cell == nil) {
  cell = [[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:@"Cell"];

// Add elements to the cell
return cell;
Run Code Online (Sandbox Code Playgroud)

这就是我做的方式:

// The cell row
NSString identifier = [NSString stringWithFormat:@"Cell %d", indexPath.row]; 

UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:identifier];

if (cell != nil)
  return cell;

cell = [[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:identifier];
// Add elements to the cell
return cell;
Run Code Online (Sandbox Code Playgroud)

不同之处在于人们对每个单元使用相同的标识符,因此只出列一个标识符可以避免分配新标识符.

对我来说,排队的重点是给每个单元格一个唯一的标识符,所以当应用程序要求它已经显示的单元格时,既不需要进行分配也不进行元素添加.

很好,我不知道哪个是最好的,"常用"方法将表的内存使用量提升到它显示的确切数量的单元格,而我使用的方法似乎有利于速度,因为它保留所有计算的单元格,但可能导致大内存消耗(除非队列有内部限制).

我这样用它错了吗?或者仅仅取决于开发人员,取决于他的需求?

iphone optimization objective-c uitableview

61
推荐指数
3
解决办法
7万
查看次数