以编程方式确定 SQL Server Compact sdf 文件的大小
Posted
技术标签:
【中文标题】以编程方式确定 SQL Server Compact sdf 文件的大小【英文标题】:Programmatically determine the size of a SQL Server Compact sdf file 【发布时间】:2015-06-12 13:33:50 【问题描述】:我正在共享主机中运行 ASP.NET MVC 应用程序。我的数据位于 SQL Server Compact 数据库“sdf”文件中。
我的磁盘空间有限。我担心我会超过这个限制,我的网站会崩溃。我可以通过 FTP 进入我的帐户,然后检查 sdf 文件的大小,但这是一个缓慢的手动操作过程。
那么,在运行期间,除了连接字符串,我可以确定数据库在磁盘上的大小吗?
【问题讨论】:
你看过了吗:***.com/questions/25637076/… or c-sharpcorner.com/UploadFile/0f68f2/… 你可以解析连接字符串并根据文件名读取磁盘上的文件大小 @Greg SO 链接不是那么有用,但是那篇博客文章非常有用! 由于您是手动进行 FTP 传输,因此您可以使用 .NET FTP 客户端从应用程序中执行相同操作 :) @hbob 如果你有共享主机,我怀疑你有磁盘权限。 【参考方案1】:是的,你可以。
FileInfo fi = new FileInfo(pathTosdfFile);
long fs = fi.Length; //your file size in bytes
顺便说一句,您可以在连接字符串中限制 sdf 文件的最大大小
Data Source=your.sdf;Max Database Size=256;
这将限制增长超过 256MB - 如果我没记错,默认为 128MB
你的数据库路径应该是这样的:
string path = System.IO.Path.GetDirectoryName
(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\your.sdf;
【讨论】:
没想到这对我有用。然后我发现我们的共享主机实际上完全信任地运行我们的应用程序。所以它起作用了。以上是关于以编程方式确定 SQL Server Compact sdf 文件的大小的主要内容,如果未能解决你的问题,请参考以下文章