小编Jea*_*ôté的帖子

在ASP.NET网站中使用单例连接是一个好主意

我目前在我的Web应用程序上使用单例,因此始终只有一个连接到数据库.

我想知道这是不是一个好主意,因为我现在遇到了这个错误:

超时已过期.从池中获取连接之前经过的超时时间.这可能是因为所有池连接都在使用中并且达到了最大池大小.

另一个重要的一点是,我的网站目前处于开发阶段,并没有很多人继续使用它,所以我不明白为什么我会收到此错误!

这是我的单身人士的代码:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

/// <summary>
/// This class take care of all the interaction with the database
/// </summary>
public class DatabaseFacade
{
    SqlConnection m_conn = null;

    string m_csLanguageColumn;

    //Variables that implement the Singleton pattern
    //Singleton pattern create only one instance of the class
    static DatabaseFacade instance = null;
    static readonly object padlock = new object();

    /// <summary> …
Run Code Online (Sandbox Code Playgroud)

asp.net singleton dbconnection

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

如何交叉多个IEnumerable?

我不明白为什么我的变量selected不包含所有TempX变量的内容.例如,在我的情况下,变量包含TempX一个SuperObject,但是当我到达第一个相交时,它就丢失了,我的View总是显示一个空列表......

顺便说一下,blablabla.ToList()是真实而复杂的linq查询.我把它说得更清楚了.

谢谢,这是代码:

 public ActionResult Search(string q)
        {
            ViewBag.q = q;

            String[] strQueries = q.Split(' ');

            IEnumerable<SuperObject> selected = new List<SuperObject>();

            foreach (string str in strQueries)
            {  
                //Query 1
                IEnumerable<SuperObject> Temp1 = blablabla.ToList();

                //Query 2
                IEnumerable<SuperObject> Temp2 = blablabla2.ToList();

                //Query 3
                IEnumerable<SuperObject> Temp3 = blablabla3.ToList();

                //Query 4
                IEnumerable<SuperObject> Temp4 = blablabla4.ToList();

                selected = selected.Intersect(Temp1);
                selected = selected.Intersect(Temp2);
                selected = selected.Intersect(Temp3);
                selected = selected.Intersect(Temp4);
            }

            return View("Search", selected);
        }
Run Code Online (Sandbox Code Playgroud)

c# linq asp.net-mvc ienumerable linq-to-sql

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

实体框架数据库首次重新生成让我失去手动更改

我正在建立一个MVC .NET网站.

由于我是一名学习首先设计数据库的老派程序员,因此我选择了数据库第一种方法.我也在使用"代码生成"来创建扩展名的文件.tt.到目前为止,一切都在发挥作用,除了一件令我烦恼的事情.

经典场景:

  • 我意识到我错过了一个领域
  • 我在数据库中添加了该字段.
  • 我进入edmx并选择从数据库更新模型.

然后我回到我的代码和那些用于工作的东西,就像我放在模型字段顶部的特殊DisplayName标签一样被删除了.

例如,如果我有这个:

public partial class Blog
    {
        public Blog()
        {
            this.BlogComments = new HashSet<BlogComment>();
        }

        public int IDBlog { get; set; }
        public string Title { get; set; }

        [AllowHtml]
        public string Content { get; set; }
        public System.DateTime DateCreated { get; set; }
        public string Author { get; set; }

        public virtual ICollection<BlogComment> BlogComments { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

它会变成

public partial class Blog
    {
        public Blog()
        {
            this.BlogComments = …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework-4 asp.net-mvc-3 database-first

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

MySQL数据库中有一列LONGTEXT的内存消耗

我正在MySQL数据库中创建一个日志表.其中一个字段仅用于大约5%的日志中,并且将包含堆栈跟踪和其他开发人员冗长的信息.我正在考虑使用LONGTEXT字段,但我想知道是否使用它会使我的数据库增长得非常快,即使此列在95%的行中为空.

所以我的问题是明确的,即使在大多数行中该列为空时,是否存在具有LONGTEXT列的内存消耗?例如,如果我使用TEXT而截断太长的字符串,我是否会在数据库上节省大量空间.

重要的是要补充说随着时间的推移会有很多日志.

谢谢!

mysql sql database fieldtype longtext

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

为什么我在进行空检查时仍会在IntelliJ中收到关于可能的NPE的警告?

我有一个可以返回空值的函数。因此,我使用了JetBrains批注,并将@Nullable批注放在函数顶部。

@Nullable
public static ConnectionManager getConnectionManager() {
    return connectionManager;
}
Run Code Online (Sandbox Code Playgroud)

然后,我进行了皮棉检查。使用此功能时,我发现了4个地方,但未进行空检查。

之前:

Service.getConnectionManager().onAssetInfoChanged();
Run Code Online (Sandbox Code Playgroud)

后:

if(Service.getConnectionManager() != null) {
    Service.getConnectionManager().onAssetInfoChanged();
}
Run Code Online (Sandbox Code Playgroud)

然后,我再次运行Lint检查。令我惊讶的是,我仍然得到:

Service.getConnectionManager().onAssetInfoChanged()第308行的方法调用“ ”可能会产生“ java.lang.NullPointerException”。

我究竟做错了什么?这是Lint检查器中的错误吗?

java lint intellij-idea nullpointerexception intellij-15

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

在 EmguCV 中使用 cvKMeans2 的异常

我正在尝试使用 C# 在 Emgu CV 中转换这段代码。我想我将大部分内容转换为他们应该在 EmguCV 中的内容,但 cvKMeans2 不断向我射击没有意义的异常。

这是我的代码:

Image<Bgr, float> src = new Image<Bgr, float>("c:\\blanc.jpg");
         Matrix<Single> samples = new Matrix<Single>(src.Rows * src.Cols, 3);
         for (int y = 0; y < src.Rows; y++)
         {
            for (int x = 0; x < src.Cols; x++)
            {
               for( int z = 0; z < 3; z++)
               {
                  if(z == 0)
                     samples[y + x * src.Rows, z] = Convert.ToSingle(src[y, x].Blue);
                  else if(z == 1)
                     samples[y + x * src.Rows, z] …
Run Code Online (Sandbox Code Playgroud)

.net c# opencv k-means emgucv

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

为什么我在不是超时时收到“操作已超时”?

我正在做一个向 IP 摄像机发出 HTTP 请求的应用程序。每次我执行 HTTP 请求时,我都会收到一张在屏幕上绘制的图片。所有这些过程都是这样完成的:

  1. 我有一个每 500 毫秒调用一次的计时器。
  2. 计时器中的代码调用执行 http 请求的线程。

所以很有可能当定时器被调用时,http请求没有完全完成,这样就可以了。

问题是,有时出于未知原因,我收到异常“操作已超时”。所以我做了一个操作日志。我记录了 http 请求之前的时间和之后的时间。它总是在 300-400 毫秒左右。我还记录了异常情况,令我大吃一惊的是,记录的时间大约是 24 或 76 毫秒。我的超时设置为 5000 毫秒,所以它永远不会超时!

在我所有的测试中,我从来没有发现超过 800 毫秒的记录时间,而且这远远低于设置的超时时间。

是否还有其他原因可以解释“操作已超时”错误?我也尝试过,ServicePointManager.DefaultConnectionLimit = 200;但它不会改变任何东西。

非常感谢!

这是线程化的代码。ListTest 是记录器,然后将每一行打印到一个文件中。

StructTakePicture structTP = (StructTakePicture)structTakePicture;
ServicePointManager.DefaultConnectionLimit = 200; 
string strFileName = structTP.FolderGUID + "input" + GetNumeroPhoto(structTP.Cam.ID, structTP.NumPhoto) + ".jpg";
DateTime dateDebut = DateTime.Now;
try
{
    ListTest.Add(strFileName + " --- BEGIN : " + dateDebut.ToString()); 

    WebRequest WebRequestObject = HttpWebRequest.Create(String.Format("http://{0}/mjpg/snapshot.cgi?camera={1}", structTP.Cam.TotalIP, structTP.Cam.View));
    WebRequestObject.Timeout = 5000;
    WebRequestObject.Credentials = …
Run Code Online (Sandbox Code Playgroud)

c# http httpwebrequest ip-camera

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

jQuery:为什么没有在生成的按钮上调用click函数

这是一个解释我的问题的jsFiddle.如果您尝试单击"添加成分"按钮,则会调用按钮单击事件.我的问题是,当我点击"创建字幕"时,它会为每个子类别动态创建"添加成分"按钮.所有按钮都具有相同的ID,以"create-ingredient"开头,并与唯一ID连接,因此它为按钮创建唯一的ID.然后我在jQuery中使用"start with"选择器来选择以"create-ingredient"开头的所有按钮.它只是不选择动态创建的那些,它只适用于最初在html页面中的那个.

这是点动事件,而不是动态的点击事件:

$("[name^='create-ingredient']").click(function() {
    alert('ingredient clicked');
    return false;
});?
Run Code Online (Sandbox Code Playgroud)

我需要更改什么才能调用动态创建的按钮事件?

谢谢!

html javascript jquery button

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