小编Bra*_*rad的帖子

单独的dll中的部分类

是否可以在单独的DLL中将两个部分(相同的命名空间,相同的类名称)分配给部分类?

c# dll partial-classes

148
推荐指数
5
解决办法
4万
查看次数

由于数据库正在使用,因此无法获得独占访问权限

我正在使用以下代码来恢复数据库,

void Restore(string ConnectionString, string DatabaseFullPath, string backUpPath)
{
    string sRestore =
        "USE [master] RESTORE DATABASE [" + DatabaseFullPath + "] FROM DISK = N'" + backUpPath + "' WITH  FILE = 1,  NOUNLOAD,  STATS = 10";

    using (SqlConnection con = new SqlConnection(ConnectionString))
    {
        con.Open();
        SqlCommand cmdBackUp = new SqlCommand(sRestore, con);
        cmdBackUp.ExecuteNonQuery();
    }
}
Run Code Online (Sandbox Code Playgroud)

但我收到以下异常

"Exclusive access could not be obtained because the database is in use.
RESTORE DATABASE is terminating abnormally.
Changed database context to 'master'."
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

c# sql t-sql database-restore

37
推荐指数
4
解决办法
2万
查看次数

DATEPART作为参数

我猜这是不可能的,因为引擎不喜欢它,但有没有办法(禁止动态SQL)DATEPART作为参数传递给一个过程?

sql t-sql sql-server stored-procedures sql-server-2008

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

DirectoryExists("c:temp \\ foo")在目录不存在时返回true!

好吧,我有点奇怪的东西.我意识到我没有正确格式化路径名是错误的,但我希望以下测试返回false,特别是因为该文件夹不存在.

DirectoryExists("C:temp\\foo")
Run Code Online (Sandbox Code Playgroud)

但事实上,即使目录不存在,它也会返回true!

代码应该是

DirectoryExists("C:\\temp\\foo")
Run Code Online (Sandbox Code Playgroud)

有人可以向我解释为什么我从第一个版本中得到误报吗?我希望它返回false或者抛出异常,但不能返回true.

.net c# file-io

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

两个坐标之间的地理中点

我一直在使用Moveable-Type网站来帮助我进行一些Geocoordinate计算并且它非常有用,但是,我在计算两个坐标之间的中点时遇到了一个错误.我的结果接近预期,但不够接近:

posA = {47.64570362, -122.14073746}
posB = {47.64316917, -122.14032175}
Run Code Online (Sandbox Code Playgroud)

预期结果(取自可移动型计算器)= 47°38'40"N,122°08'26"W = {47.644444, -122.140556}我的结果:{49.6054801645915, -122.14052959995759}

这是我的代码:

private Geocoordinate MidPoint(Geocoordinate posA, Geocoordinate posB)
{
   Geocoordinate midPoint = new Geocoordinate();

   double dLon = DegreesToRadians(posB.Longitude - posA.Longitude);
   double Bx = Math.Cos(DegreesToRadians(posB.Latitude)) * Math.Cos(dLon);
   double By = Math.Cos(DegreesToRadians(posB.Latitude)) * Math.Sin(dLon);

   midPoint.Latitude = RadiansToDegrees(Math.Atan2(Math.Sin(DegreesToRadians(posA.Latitude)) + Math.Sin(DegreesToRadians(posB.Latitude)), 
                Math.Sqrt((Math.Cos(DegreesToRadians(posA.Latitude)) + Bx) * (Math.Cos(DegreesToRadians(posA.Latitude))) + Bx) + By * By));

   midPoint.Longitude = posA.Longitude + RadiansToDegrees(Math.Atan2(By, Math.Cos(DegreesToRadians(posA.Latitude)) + Bx));

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

我有几种私有方法可以在Degrees和Radians之间进行转换.例如

private double DegreeToRadian(double angle) …
Run Code Online (Sandbox Code Playgroud)

c# geolocation latitude-longitude

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

我可以在OUTPUT子句中使用DISTINCT吗?

我正在尝试这样的事情:

INSERT INTO MyTable (
       Col1
      ,Col2 )
OUTPUT DISTINCT -- issue is with DISTINCT
       INSERTED.Col1
      ,@otherParameter
       INTO IdListTable
SELECT ColA
      ,ColB
      ,SUM(ImportantNumber)
FROM MyOtherTable
GROUP BY ColA, ColB
Run Code Online (Sandbox Code Playgroud)

除了SQL不希望我DISTINCTOUTPUT子句中使用.我想到的解决方法是为输出创建一个临时表,然后INSERT DISTINCT进入IdListTable.关于不同解决方法的任何想法?

sql insert distinct sql-server-2008

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

如何在IIS 7.0中允许混合模式身份验证

如何使用在IIS 7.0上运行的表单身份验证对Windows用户进行后门验证?

asp.net iis-7 forms-authentication windows-authentication

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

读/写锁定混乱

我不完全确定如何最好地完成这个多线程场景,所以任何输入都会受到赞赏.

我有一个块,它读取数据,几个线程可以同时访问.我有另一个写入数据的块,只有一个线程可以随时写入.只要任何线程正在读取数据,它也无法开始写入.是这样ReaderWriterLockSlim的方式,是否会在阻止线程写入之前等待读取线程退出?

.net c# multithreading locking

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

基于集合的执行; SQL和.NET

在SQL中,应该总是努力进行基于集合的操作而不是基于迭代的(即循环).在.NET中,我们经常循环集合和对象..NET中是否有允许基于集合处理的命令,或者是基于迭代的所有命令?(我想起了如何DataAdapter.Fill调用DataReader遍历结果集中每条记录的调用).我并不十分熟悉LINQ,但我的猜测是它的实现只会掩盖幕后发生的迭代.


更新:

澄清一点:我并不是说自己在这里有任何天才,我不是第二个猜测让我的人生编程变得更好的优秀人才.我只是在询问是否存在执行基于集合的操作的命令,就像SQL在您执行操作时所做的那样UPDATE,foreach(var item in obj) { ... }明显地在对象中进行迭代.如果他们使用循环,SQL开发人员就会受到严厉批评,但在.NET中,我们会一直使用它们.作为一个在SQL和.NET上都很重要的开发者,我在问.NET中是否有任何替代方法可以完全避免循环.

.net sql iteration set-based

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

从抽象类引用inherting类

有没有办法引用Type继承抽象类的类(即)?

class abstract Monster
{
    string Weakness { get; }
    string Vice { get; }

    Type WhatIAm
    {
        get { /* somehow return the Vampire type here? */ }
    }
}

class Vampire : Monster
{
    string Weakness { get { return "sunlight"; }
    string Vice { get { return "drinks blood"; } }
}

//somewhere else in code...
Vampire dracula = new Vampire();
Type t = dracula.WhatIAm; // t = Vampire
Run Code Online (Sandbox Code Playgroud)

对于那些好奇的人......我在做什么:我想知道我的网站上次发布的时间..GetExecutingAssembly完美地工作,直到我从我的解决方案中取出dll.之后,它BuildDate始终是实用程序DLL的最后构建日期,而不是网站的dll. …

.net c# inheritance

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

如何从字符串变量中提取2个日期?

我有一个包含两个日期的字符串.我查看了.Split和.Substring函数.不确定我是走最有效的路线.是否有一种干净的方法从字符串中提取日期?

string test = "Hello World.  Random date1 is 12/10/2010. Now 4 days later is 12/14/2010." 
Run Code Online (Sandbox Code Playgroud)

c# regex

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

.NET内存消耗问题

这些方法中的任何一个是使用比另一个更多的内存还是在GC上使用更大的负载?

选项1

LargeObject GetObject()
{
    return new LargeObject();
}
Run Code Online (Sandbox Code Playgroud)

选项#2

LargeObject GetObject()
{
    LargeObject result = new LargeObject();
    return result;
}
Run Code Online (Sandbox Code Playgroud)

.net memory-management

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