我试图找出如何读取/写入C#中的扩展文件属性,例如,您可以在Windows资源管理器中看到的注释,比特率,访问日期,类别等.任何想法如何做到这一点?编辑:我主要是读/写视频文件(AVI/DIVX/...)
在创建视图后,以下代码中发生了什么?你能给我任何想法或路径吗?
此代码取自此处.
/****** Object: View [dbo].[vProductImages] Script Date: 04/28/2008 16:59:05 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[vProductImages]
AS
SELECT dbo.Products_Images.ProductID, dbo.Images.ThumbUrl, dbo.Images.FullImageUrl
FROM dbo.Products_Images INNER JOIN
dbo.Images ON dbo.Products_Images.ImageID = dbo.Images.ImageID
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] …Run Code Online (Sandbox Code Playgroud) 所以,我有一个添加扩展属性的脚本,一些描述一个表,一些描述一个列.如何在添加扩展属性之前检查扩展属性是否存在,以便脚本不会抛出错误?
我想在SqlServer连接字符串中添加一些自定义属性,如下所示:
Integrated Security=SSPI;Extended Properties="SomeAttr=SomeValue";Persist Security Info=False;Initial Catalog=DB;Data Source=SERVER
Run Code Online (Sandbox Code Playgroud)
然后在sql中获取该属性.例如SELECT SOME_FUNCTION('SomeAttr')
SQL Server中存储的扩展属性在哪里?
它们是否存储在包含添加到的对象的数据库中,或者是单独存储并以某种方式绑定到本地计算机.
例如,如果我添加填充SSMS中的"描述"字段(MS_Description扩展属性)来记录表的列,然后我关闭数据库引擎并将MDF/LOG文件复制出来以将其附加到另一台机器上,扩展属性与复制的文件一起使用,还是会留在本地计算机上的master数据库(或类似的东西)中?
问题确实说明了一切,是否可以更新表中列的扩展属性。我一直在网上环顾四周,但它们似乎只显示更新表的扩展属性,而不是表中的列。
我们的C#Windows应用程序使用EWS Managed API 2.0在用户的日历中创建约会.每个约会都有一个具有独特价值的扩展属性.它稍后使用FindItems和找到约会ItemView.
用户在第一次执行此搜索时会遇到严重延迟.后续响应时间完全可以接受.
("第一次"在这里有点模糊,因为用户可能会在当天晚些时候再次遇到延迟)
// locate ID of appointment where extended property value equals 1234:
var filter = new Ews.SearchFilter.IsEqualTo(extendedPropertyDefinition, 1234);
var view = new ItemView(1, 0);
view.PropertySet = BasePropertySet.IdOnly;
var folder = new FolderId(WellKnownFolderName.Calendar, new Mailbox("..."));
var result = service.FindItems(folder, filter, view);
Run Code Online (Sandbox Code Playgroud)
远程服务器是Exchange Server 2007 SP1.
MSDN将一些评论与搜索文件夹和受限制的视图联系在一起,但我不确定这些是否适用于我们的情况.
的行为将着眼于一个文件夹中存储将创建搜索文件夹.创建搜索文件夹时,会将其缓存以供以后使用.如果用户尝试创建已存在的搜索文件夹,则使用缓存的搜索文件夹.这使得未来的观看速度相当快.默认情况下,Exchange不会无限期地缓存所有搜索文件夹.
特别是关于EWS:
同样重要的是要注意这样一个事实,即第一次发布Exchange存储搜索查询时,它将非常缓慢地运行并且可能超时,而在将来的运行中它将毫无问题地响应.这是由执行存储搜索时Exchange服务器上发生的后端进程引起的.
他们建议为非变化的非动态查询创建搜索文件夹,这在我们的案例中似乎不合适,因为每个约会的查询都不同.
如果应用程序需要具有一组固定不变参数的特定查询,则可以使用搜索文件夹.[...]搜索文件夹仅对不变的非动态查询有用.
我们需要的是在本质上创建一个"索引" - 在数据库中 - 在属性上,确保所有对这个特定属性的搜索都是快速的,无论时间或频率.
是否有可能"索引"这个属性?是否可以在客户端或服务器端配置任何内容以消除此初始延迟?
c# extended-properties exchange-server-2007 exchangewebservices
C# DataTable 有一个 PropertyCollection ExtendedProperties。该表中的 DataColumn 也有一个ExtendedProperties 为什么 DataRow 没有这个?
因此,例如,如果我有多个表并且想要添加一些要在视图中使用的元数据,我可以执行以下操作:
tbl.ExtendedProperties["class"] = "pandas";
tbl.Columns["name"].ExtendedProperties["class"] = "highlighted";
Run Code Online (Sandbox Code Playgroud)
我怎样才能更进一步,做类似的事情
tbl.Rows[0].ExtendedProperties["class"] = "highlighted";
Run Code Online (Sandbox Code Playgroud) 某些文件在其属性中具有“摘要”选项卡,此选项卡包含诸如标题,作者,注释之类的信息。C#中有什么方法可以读取文件的注释。我只需要阅读jpg等图像文件中的注释。
我有兴趣使用python从文件中获取更多信息.
我知道使用os.stat(如下所示)会返回有关该文件的信息,但是我想从文件中获取其他属性,例如'Where from?'
os.stat(filename)
posix.stat_result(st_mode=33184, st_ino=131691855, st_dev=16777220L, st_nlink=1, st_uid=501, st_gid=20, st_size=174241, st_atime=1445046864, st_mtime=1445045836, st_ctime=1445045836)
Run Code Online (Sandbox Code Playgroud)
但是,这些并不是我感兴趣的属性.我有兴趣获得以下所有属性(特别是'Where from')
我怎样才能获得'Where from'字段?
我已经尝试过使用os.access了,但是这并没有返回我想要的内容,并且一直在搜索os上的文档,所以我不确定我还能尝试什么.