【发布时间】:2018-12-12 12:46:41
【问题描述】:
简介
我正在尝试通过我的软件备份 SQL 数据库。在运行时,软件会询问用户他希望将备份存储在哪里。
要求
现在,我的要求是用户只能在 PC 本身或连接到它的任何 pendrive 上创建备份,但不能在网络 PC 上。
我想出的解决方案
这是我正在使用的代码:-
SaveFileDialog obj = new SaveFileDialog();
obj.DefaultExt = ".bak";
obj.FileName = FileName;
obj.ShowDialog();
if (obj.FileName != null && obj.FileName != "" && obj.FileName.StartsWith("\\\\") == false)
{
//Save File Work
}
问题
现在,我想问你们,这段代码obj.FileName.StartsWith("\\\\") == false 是否足以阻止用户保存在网络驱动器上,或者我应该使用其他方法来防止这种情况发生吗?
【问题讨论】:
-
我可能会使用
pushd预先映射网络驱动器来解决此限制。 techrepublic.com/blog/windows-and-office/… -
您可以检查路径是否为网络路径并使用
new Uri(mypath).IsUnc,然后根据此阻止用户 -
@PranayRana 是的,它是完美的。你能把它写成答案吗
-
@Agent_Spock - 添加
标签: c# winforms .net-3.5 backup-sqldatabase