小编Zap*_*ica的帖子

如何在Entity Framework中完全锁定一行

我正在处理我们处理货币交易的情况.

例如,我有一个用户钱包表,其中包含余额.

UserId; Wallet Id; Balance
Run Code Online (Sandbox Code Playgroud)

现在在我们的网站和Web服务中,每当某个事务发生时,我们需要:

  1. 检查是否有足够的资金可用于执行该交易:
  2. 从余额中扣除交易成本.

如何以及在整个交易期间锁定该行/实体的正确方法是什么?

根据我的阅读,有一些解决方案,其中EF标记一个实体,然后在将其保存回数据库时对该标记进行比较,但是当另一个用户/程序已经编辑了该数量时它又做了什么?

我能用EF实现这个目标吗?如果没有,我有什么其他选择?

调用存储过程可能允许我正确地锁定行,这样当程序A锁定它时,没有其他人可以访问SQL Server中的那一行吗?

c# sql-server entity-framework rowlocking entity-framework-6.1

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

使用LINQ SUM时出现异常

我正在尝试获取"预订"的SUM并且我得到错误"转换为值类型'Int32'失败,因为具体化值为null.结果类型的泛型参数或查询必须使用可空类型."

var bookings = entities.Bookings.Where(x => x.ID == id &&
                                     x.StartDate <= bookingEnd &&
                                     x.EndDate >= bookingStart)
                                    .Sum(x => x.BookingQuantity);
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?我需要得到0,如果它变成零,否则它的预订.

linq entity-framework

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

PostgreSQL INSERT到一个枚举数组

我该如何插入array of enums
这是我的enum:

CREATE TYPE equipment AS ENUM ('projector','PAsystem','safe','PC','phone');
Run Code Online (Sandbox Code Playgroud)

然后我的桌子上有一系列设备:

CREATE TABLE lecture_room (
   id INTEGER DEFAULT NEXTVAL('lecture_id_seq')
 , seatCount int
 , equipment equipment[]
) INHERITS(venue);
Run Code Online (Sandbox Code Playgroud)

这是我要插入的ATTEMPT:

INSERT INTO lecture_room (building_code, floorNo,  roomNo, length, width
                        , seatCount, equipment) 
VALUES 
('IT', 4, 2, 10, 15 ,120, ARRAY['projector','PAsystem','safe']),
Run Code Online (Sandbox Code Playgroud)

但它给了我以下错误:

ERROR: column "equipment" is of type equipment[] but expression is of type text[]
SQL state: 42804
Hint: You will need to rewrite or cast the expression.
Run Code Online (Sandbox Code Playgroud)

postgresql enums types sql-insert

11
推荐指数
4
解决办法
9216
查看次数

Android用于将对象溢出到下一行的布局

我不确定在这种情况下使用什么类型的布局.

我基本上想要一个可以添加视图的水平线性布局.在这种情况下按钮(在应用程序中显示标签)但每个视图将根据它显示的标签的名称有不同的宽度,所以我想添加说10个标签,我需要一个适合它的布局可以在第1行,然后如果它不适合,自动溢出到下一行.

基本上文本视图如何与文本一起使用,如果文本长度超过下一行的宽度,除非我想用不可点击的按钮执行此操作.

我想到了一个网格布局,但是当你在第一行有2个带有长名称的标签而在第二行有7个短名称时,它会在每一行上都有相同的"标签".

看起来有点像这样的东西: 在此输入图像描述

我基本上想要看看下面的堆栈溢出是如何做到的.

tags android android-layout android-linearlayout

10
推荐指数
1
解决办法
1429
查看次数

Google Volley vs Android-Async-Http

我正在研究这两个Android Http Networking库.

我想有些人使用这两个库的经验.就个人而言,我总是非常高兴地使用http://loopj.com/android-async-http/库.但最近我建议使用Volley Framework.

我可以从一个到另一个获得什么好处?
从我的阅读到目前为止,Volley在一个库中集成了许多不错的功能,如图像加载,请求缓存,请求取消.

我目前的使用案例/规格:

从我的Android应用程序中获取Web服务.

  • 从Web服务接收JSON对象
  • 易于与GUI集成
  • 原始性能的稳定性和可靠性
  • 图书馆的长期维护和支持.
  • 易于使用/易于实施

从SE上的一些阅读:

"Volley一切都很好,但从负面来看,它是一个没有文档记录,不受支持的,"将代码扔到墙上并对其进行I | O演示"库".

所以我认为它清晰的Volley可能会得到功能,但是记录和维护的程度如何呢?如果我决定使用它,4年后仍然会有它的支持吗?

android androidhttpclient android-volley android-async-http

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

在.net解决方案中使用多个项目的Hangfire

我希望在我的asp.net web api和asp.net MVC网站项目中实现hangfire.

我构建解决方案的方式如下:

解决方案 - 我的解决方案
1:模型 - (包含实体框架对象和类的项目)
2:服务(我实现所有>业务逻辑,更改等的地方)这是我最有可能使用HangFire的地方.

3:Web API(我的asp.net api项目)
4:Web UI(mvc 5 Admin界面网站)

项目3和项目4都利用2:Services项目来完成工作并调用执行业务逻辑的服务.这是大多数任务将被剥离的地方.

我将如何实现hangfire,以便他们各自的iis站点都可以使用hangfire的相同"实例".但它显然会在相关的应用程序池上运行?

或者它可能不能那样工作,我必须让它在一个地方运行?

我有什么选择,还有什么是推荐的方法?

asp.net hangfire

9
推荐指数
1
解决办法
1342
查看次数

在Playstore上作为组织发布应用程序?

我去的时候:https://play.google.com/apps/publish/signup/

它现在需要我登录,它有我的个人帐户和我的详细信息,它确实给出了这样的声明:

如果您想使用其他帐户,可以从以下选项中进行选择.如果您是某个组织,请考虑注册新的Google帐户,而不是使用个人帐户.

我点击创建一个新的Google帐户,但它要求输入名字和姓氏等.

当然我需要创建一个不同类型的帐户?比如组织账号?哪里有关于组织名称等的详细信息?

我是否需要创建一个普通帐户,并将组织名称放在他们想要名字的位置?我打算怎么办?

android google-account

8
推荐指数
0
解决办法
506
查看次数

asp.net mvc使用Java Script渲染部分视图

我想创建一个在表中显示数据的部分视图.

我将有一个Select元素,可以选择服务.

当用户在组合框中选择服务时,我想要调用带有服务ID号的部分视图:

我怎样才能做到这一点?

这是一个动作方法,它将呈现partialView

//
// GET: /Service/ServiceStatusLogs/1
public ActionResult ServiceStatusLogs(int id)
{
   var db = new EFServiceStatusHistoryRepository();
   IList<ServiceStatusHistory> logs = db.GetAllStatusLogs(id);
   return View("_ServiceStatusLogs", logs);
 }
Run Code Online (Sandbox Code Playgroud)

这是返回页面的主要操作方法:

//
// GET: /Services/Status
public ActionResult Status()
{
  IList<Service> services;
  using (var db = new EFServiceRepository())
  {
    services = db.GetAll();
  }
   return View(services);
}
Run Code Online (Sandbox Code Playgroud)

javascript ajax asp.net-mvc razor

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

android线性布局将两个项目放在一起

我有以下布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context=".MainActivity" >

   <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" 
            >
<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Status:"
    android:layout_gravity="left"
    android:textAppearance="?android:attr/textAppearanceMedium" />
  <ImageView
                android:id="@+id/txcpluss_imageView_refresh"
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_gravity="right"
                android:clickable="true"
                android:contentDescription="icon"
                android:gravity="right"
                android:src="@drawable/refresh_big" />
  </LinearLayout>
 </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

但我的刷新图标不在我想要的右上角.它就在文本视图旁边.

如何让文本视图位于左侧,右侧的刷新图标位于左侧?

android android-layout android-linearlayout

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

SignInManager 在尝试登录时抛出 null

我正在实施 asp.net 身份。我已经用int主键而不是默认的String. 我按照以下文章这样做:文章

抱歉所有的代码,但是我已经被这个愚蠢的错误困住了一段时间,所以我宁愿提供更多的信息而不是更少的信息。

我有以下课程:

public class FskUser : IdentityUser<int, FskUserLogin, FskUserRole, FskUserClaim>
{
    ...
    public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<FskUser, int> manager)
    {
                    // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType
        var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
        // Add custom user claims here
        return userIdentity;
    }
}
Run Code Online (Sandbox Code Playgroud)

我的自定义登录管理器

  public class FskSignInManager : SignInManager<FskUser,int>
{
    public FskSignInManager(FskUserManager userManager, IAuthenticationManager authenticationManager)
        : base(userManager, authenticationManager)
    {
    }

    public override Task<ClaimsIdentity> CreateUserIdentityAsync(FskUser user)
    {
        return user.GenerateUserIdentityAsync((FskUserManager)UserManager); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc-4 owin asp.net-identity-2

7
推荐指数
1
解决办法
4704
查看次数