小编RBa*_*ung的帖子

对象超出范围

我们有类似下面的代码来修复CA2000:在丢失范围之前处理对象(http://msdn.microsoft.com/en-us/library/ms182289.aspx).当tbl被赋值为null时,它引用垃圾的对象会被收集吗?

    private DataTable BuildRequestDataTable(Factory tableFactory)
    {
        DataTable tbl = null;
        DataTable requestTable = null;
        try
        {
            tbl = tableFactory.CreateTable();
            requestTable = tbl;
            tbl = null;
        }
        finally
        {
            if (tbl != null)
            {
                tbl.Dispose();
            }
        }

        return requestTable;
    }
Run Code Online (Sandbox Code Playgroud)

c# garbage-collection reference

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

如何检查是否存在使用表的视图

是否可以使用SQL Server Management Studio检查表是否是相同或不同数据库中视图的一部分?

如果它可以通过一些插件完成,那也没关系.

sql database ssms sql-server-2008

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

圆角按不均匀间隔的角度

鉴于:

x = originX + radius*Cos(角度);

y = originY + radius*Sin(角度);

为什么这些点不能均匀分布在圆的边缘?

结果图:

在此输入图像描述

class Circle
{
    public Vector2 Origin { get; set; }
    public float Radius { get; set; }
    public List<Vector2> Points { get; set; }

    private Texture2D _texture;

    public Circle(float radius, Vector2 origin, ContentManager content)
    {
        Radius = radius;
        Origin = origin;
        _texture = content.Load<Texture2D>("pixel");
        Points = new List<Vector2>();

        //i = angle
        for (int i = 0; i < 360; i++)
        {
            float x = origin.X + radius …
Run Code Online (Sandbox Code Playgroud)

c# xna geometry angle

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

这是哪种排序算法?

我需要知道哪种排序算法排序如下:

[4 1 7 6 3 11]

[4 1 7 3 6 11]

[4 1 3 7 6 11]

[1 4 3 7 6 11]

[1 4 3 6 7 11]

[1 3 4 6 7 11]
Run Code Online (Sandbox Code Playgroud)

明天是考试,我很困惑.它应该是一个简单的算法,但它不能插入排序/选择排序,我甚至看了heapsort(绝对)和合并排序 - 最后一个选项.

我会说它是mergesort,但添加它应该很容易,我不确定.或者我严重误解了算法是如何工作的.:(

感谢阅读,至少!:)

sorting algorithm

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

如何使用批量插入根据文件扩展名导入文件?

我有一个文件夹,每小时创建一个新的日志文件.每次文件名都不同.如何基于任何具有扩展名.log的文件批量插入?这是我的代码

select * from [data_MaximusImport_t]
BULK
INSERT Data_MaximusImport_t
FROM 'C:\Program Files (x86)\DataMaxx\*.log'
WITH
(FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
) 
Run Code Online (Sandbox Code Playgroud)

现在我得到错误*.log"无法打开.操作系统错误代码123(文件名,目录名或卷标语法不正确.).

***这是我原始问题的编辑.我能够用这段代码找出文件名

DECLARE @Path varchar(256) = 'dir C:\datamaxx\*.log'
DECLARE @Command varchar(1024) =  @Path + ' /A-D  /B'
INSERT INTO myFileList
EXEC MASTER.dbo.xp_cmdshell @Command
SELECT * FROM myFileList
Run Code Online (Sandbox Code Playgroud)

现在我只需要弄清楚如何在路径中粘贴该名称.我应该将文件名作为变量吗?

sql sql-server import bulkinsert

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

在字符串上构建表达式等于

下面的代码适用于StartsWith,Contains但是当我尝试时,Equals我得到了这个异常:类型'System.String'上的多个方法'Equals'与提供的参数兼容.

要恢复,CreatePredicate可以构建3种类型的谓词,但只有Equals不起作用:

  • AList.Where(x => x.MyField.StartsWith("ValueToSearch")); //OK
  • AList.Where(x => x.MyField.Contains("ValueToSearch")); //OK
  • AList.Where(x => x.MyField.Equals("ValueToSearch")); //Not OK

..

public enum TypeSearch
        {
            StartsWith = 1,
            Contains = 2,
            Equals = 3
        }

    private static Expression<Func<T, bool>> CreatePredicate<T>(string member, object value, TypeSearch type)
    {
        var p = System.Linq.Expressions.Expression.Parameter(typeof(T));
        System.Linq.Expressions.Expression body = p;
        foreach (var subMember in member.Split('.'))
        {
            body = System.Linq.Expressions.Expression.PropertyOrField(body, subMember);
        }

        var res = System.Linq.Expressions.Expression.Lambda<Func<T, bool>>(
                System.Linq.Expressions.Expression.Call(
                    System.Linq.Expressions.Expression.Call(
                        body,
                        "ToUpper", null), …
Run Code Online (Sandbox Code Playgroud)

.net c# expression c#-4.0

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

如何在sql server 2008中显示非公共行?

我正在使用sql server 2008.我有三个表tableA,tableB和表C.在表A中,我有两列,一个是Employeeid,另一个是Projectid.在表B中,我有两列,一列是employeeid,另一列是Employeename.在表C中,我有两列,一列是projectid,另一列是项目名称.

我使用以下查询来显示tableA和表B中的非公共行(不匹配的Employeeid)

   SELECT A.EmployeeID FROM A 
   EXCEPT
   SELECT B.EmployeeID FROM B
Run Code Online (Sandbox Code Playgroud)

除了Employeeid之外,我还希望显示projectname.即)我需要这样的:

    Employeeid|projectname
    1         |ABC
    2         |XYZ
Run Code Online (Sandbox Code Playgroud)

谁能告诉我如何使用sql server 2008做到这一点?

sql sql-server-2008

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

在数据库中启用快照隔离所需的用户权限是什么?

我有一个用户在数据库上拥有db_datareader,db_datawriter权限.我想将隔离级别设置为用户可以访问的DB.我的用户需要具有哪些权限才能设置这些权限.使用的数据库:SQL SERVER 2008

database isolation-level sql-server-2008

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

如何计算(1 + a%m + a ^ 2%m ...... + a ^ n%m)之和

如何计算的总和(1+a%m+a^2%m……+a^n%m)哪里 m=k!, 1<=k<=12, n<=10^18.如何计算这笔金额.使用电脑和时间限制是3秒.抱歉我的错误

algorithm

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

VBA宏以突出显示当前电子邮件中的选定文本

我正在尝试为Outlook 2013创建一个VBA宏,它将在我当前正在编写的电子邮件中采用所选文本(HTML格式)并设置字体大小/颜色/粗体/突出显示.

我的宏有两个if/then块.一个块用于Outlook 2003,并为所有四个文本特征提供所需的结果.但是,在2003年之后,Outlook使用Word EditorType来处理HTML电子邮件,因此我需要一个具有不同语法的不同VBA块来更改所选文本的字体.我的2013块中的VBA可以正确地用于更改粗体/磅值,但它不会对文本应用突出显示.相反,突出显示文本的命令(rng.Range.HighlightColorIndex = wdYellow)导致选择窗口的背景颜色变为清除(这样即使仍然真正选择了文本,也不再显示文本) ,但没有突出显示应用于所选文本.

当突出显示文本不起作用时,我尝试了其他的东西.我尝试使用vba命令将背景设置为黄色(当没有vba手动应用时,它具有相同的视觉效果).rng.Shading.BackgroundPatternColor = wdColorYellow.但是,背景变为黑色,而不是将背景变为黄色.

2013块也不会导致字体颜色发生变化.尽管声明(rng.Font.Color = wdColorBlue),字体颜色仍保持黑色

请告诉我如何将所选文本突出显示为黄色并将所选文本的颜色设置为蓝色.

完整的VBA宏如下所示.

 Sub ChangeSelectedFontBold14HiYellow()
 Dim msg As Outlook.MailItem
 Dim insp As Outlook.Inspector

 Set insp = Application.ActiveInspector

 If insp.CurrentItem.Class = olMail Then 
     Set msg = insp.CurrentItem

     If insp.EditorType = olEditorHTML Then ' outlook 2003
         Set hed = msg.GetInspector.HTMLEditor
         Set rng = hed.Selection.createRange
         rng.pasteHTML "<b><font style='color: blue; background: yellow; font-size: 14pt;'>" & rng.Text & "</font></b>"
     End If

     If insp.EditorType = olEditorWord Then ' outlook 2013
         Set hed = …
Run Code Online (Sandbox Code Playgroud)

vba outlook-2013

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