c# - 以编程方式修改 Sharepoint Online Excel 文件

标签 c# visual-studio sharepoint-online

我们需要创建一个 C# 应用程序,该应用程序可以修改我们的 Sharepoint 在线站点之一中的 Excel 文件。

对于本地文件,我喜欢这样:

Excel.Application excel_app = new Excel.Application();
excel_app.Visible = true;
Excel.Workbook workbook = excel_app.Workbooks.Open(
        <path to excel file>,
        Type.Missing, Type.Missing, Type.Missing, Type.Missing,
        Type.Missing, Type.Missing, Type.Missing, Type.Missing,
        Type.Missing, Type.Missing, Type.Missing, Type.Missing,
        Type.Missing, Type.Missing);

但是如果我输入 Sharepoint Excel 文件的 url,它就不起作用。这是否可行,如何实现?

最佳答案

您可以下载文件、修改文件、上传文件并替换

以下是如何连接到共享点站点并上传文件

使用 Microsoft.SharePoint.Client 命名空间

using SP = Microsoft.SharePoint.Client;
...
using (var context = new SP.ClientContext(new Uri(<YOURSITEURL>))) {
    var web = context.Web;
    context.Credentials = new NetworkCredential(<NETWORK_USERNAME>, <NETWORK_PASS>, <DOMAIN_NAME>);
    context.Load(web);
    try
    {
        context.ExecuteQuery();
    } catch (Exception ex) {
    }
    var file = web.GetFileByServerRelativeUrl(new Uri(<FILE_URL>).AbsolutePath);
    context.Load(file);
    try
    {
        context.ExecuteQuery();
        file.SaveBinary(new SP.FileSaveBinaryInformation() { Content = Encoding.UTF8.GetBytes(<NEW_FILE>) });
        try
        {
            context.ExecuteQuery();
        }
        catch (Exception ex)
        {
        }
    }
}

关于c# - 以编程方式修改 Sharepoint Online Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37837675/

相关文章:

c# - 为什么我的动画(动画师)延迟了?

c# - 使用 WCF 测试客户端在 Visual Studio 中运行 WCF 服务时出现 NullReferenceException

c# - 如何将两个多维矩阵从matlab传递给C#

c# - SharePoint Online CSOM 网站列默认值

active-directory - 我们可以使用 Power App 中的 Office365Users 连接器获取名为员工 ID 的 Active Directory 属性吗

c# - 如何使用访问 token 从 Sharepoint Online 下载文件

c# - 如何利用 MVVM Light EventToCommand 在 XAML 中绑定(bind)大量相同的事件?

c# - 如何使用azure sdk获取虚拟机公共(public)IP?

visual-studio - Service Fabric SDK 日志大小

c# - if 语句匹配多个值