SharePoint Designer — Các hoạt động tùy chỉnh để thực hiện chức năng xác định người sử dụng C#

CẬP NHẬT: Điều này đã được phát hành để CodePlex ở đây: http://www.codeplex.com/spdwfextensions

CẬP NHẬT: Xem ở đây để đặt các ghi chú phát hành: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

CẬP NHẬT: Xem ở đây để suy nghĩ của tôi về thương mại hóa các dự án này: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Dự án này cung cấp một hoạt động tùy chỉnh trong SharePoint Designer. Sử dụng này hoạt động tùy chỉnh để gọi (công văn) bất kỳ C# chức năng mà bạn đưa vào hội đồng được liên kết.

Theo cuối tháng mười, 2007, đây là chỉ là một phiên bản ban đầu của dự án. Tôi có kế hoạch mở rộng nó với một số chức năng bổ sung, trong đó xâu con, chỉ số, thay thế, gọi Dịch vụ web và bất cứ điều gì đó có vẻ hữu ích hoặc thú vị. Tôi cũng dự định đăng bài này để codeplex sau khi tôi đã hành động của tôi với nhau ngày trước đó. Điều này cũng sẽ có thể triển khai như một giải pháp tại một số điểm.

Nếu bạn có bất kỳ ý kiến, câu hỏi hay đề nghị, Xin vui lòng để lại cho họ trong ý kiến hoặc gửi email cho tôi.

Tuyên bố từ chối:

Tôi làm cho hoàn toàn không có tuyên bố về sự phù hợp của này cho mục đích nào. Sử dụng tại rủi ro của riêng bạn.

Bước cài đặt (để được theo sau cho mỗi WFE trong trang trại):

1. Tải về Zip và giải nén.

2. Cài đặt .dll vào gấc. Tôi thường mở c:\windowsassembly bằng cách sử dụng windows explorer và bản sao nó có.

3. Sửa đổi web.config để thêm lắp ráp để kiểm soát an toàn:

<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>

<authorizedType hội = "SpdGenericInterface, Phiên bản = 1.0.0.0, Văn hóa = trung tính, PublicKeyToken = abe076fd8125f3c4" Không gian tên = "Nivlag" TypeName = "*" Cho phép = "True" />

4. Sao chép "SpdGenericInterface.actions" để C:\Chương trình FilesCommon FilesMicrosoft Sharedweb máy chủ extensions12TEMPLATE1033Workflow

Lưu ý rằng vị trí ở trên là cụ thể cho cài đặt ngôn ngữ tiếng Anh.

5. Đóng SharePoint Designer (Nếu nó đã mở).

6. iisreset

7. Mở SPD và tạo ra một công việc mới.

Nếu mọi việc suôn sẻ, bạn nên được khen thưởng với một thể loại mới của hành động:

hình ảnh

Ghi chú:

Xem Ở đây (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) để có cái nhìn tuyệt vời của quá trình cho việc tạo ra, cài đặt và cấu hình một giải pháp như thế này.

Zip được thiết kế để trích xuất trực tiếp cho bạn c:\ lái xe. Nếu bạn làm điều này, bạn có thể mở các dự án và tất cả các đường dẫn sẽ được phù hợp.

Sử dụng điều này trong visual studio, bạn có thể cần phải cài đặt "Tiện ích mở rộng cho Windows WF".

Tải lên ban đầu có chứa chỉ là một "dispatcher chức năng", "ToLower()". Để thêm nhiều chức năng, thêm nó vào các phương pháp thực hiện như được hiển thị:

 bảo vệ ghi đè ActivityExecutionStatus
          Thực hiện(ActivityExecutionContext executionContext)
        {

            chuỗi functionToDispatch;
            functionToDispatch = Điều này.DispatchFunction.ToLower();

            chuyển đổi (functionToDispatch)
            {
                trường hợp "tolower()":
                    {
                        Điều này.OutResult1 = Điều này.InParam1.ToLower();
                        phá vỡ;
                    }

                mặc định:
                    {
                        Điều này.OutResult1 = "Không xác định chức năng: [" + Điều này.DispatchFunction + "].";
                        phá vỡ;
                    }
            }

            trở lại ActivityExecutionStatus.Đóng cửa;
        } // ActivityExecutionStatus

    }

Sau đó, tái xây dựng dự án và sao chép lắp ráp gấc. Tôi mong đợi một iisreset sẽ được yêu cầu.

9 Những suy nghĩ trên "SharePoint Designer — Các hoạt động tùy chỉnh để thực hiện chức năng xác định người sử dụng C#

  1. Gerry Whitworth
    Tôi theo hướng dẫn của mình và tất cả mọi thứ dường như làm việc cho đến khi tôi chọn các hành động trong SP Designer. Các nhà thiết kế này không dán mã vào các công việc. Tôi đã gửi anh ta một email và tôi đoán ông là quá bận rộn để đáp ứng.
    Tôi giải quyết vấn đề bản thân mình.
    Qua các hành động từ "SpdGenericInterface.actions" vào "WSS.actions" tập tin và nó tất cả mọi thứ đã làm việc. Tôi hy vọng điều này sẽ giúp những người khác.
  2. Marco mancinelli
    nghe có vẻ tốt, nhưng tôi không thể cài đặt phần mở rộng =(
    thiết kế của tôi con thấy nó nhưng khi tôi bấm vào nó không có gì xuất hiện… Xin vui lòng giúp… tnx.
  3. Bernard Lambeth

    Tôi đang sử dụng này hoạt động tùy chỉnh để thay thế() chức năng. Các trang trại là SharePoint 2007, với cân bằng tải web frontend. Tôi nhận được các thất bại liên tục để bắt đầu lỗi, nhưng các quy trình công việc thường khởi động lại trong 5 – 15 Min. Tôi tin rằng việc làm bộ đếm thời gian quy trình làm việc và quy trình làm việc chuyển đổi dự phòng đang khởi động lại các quy trình công việc. Tôi xem xét các bản ghi SharePoint, và cuối cùng đã bắt gặp lỗi này.

    RunWorkflow: Microsoft.SharePoint.SPException:
    tại Microsoft.SharePoint.Workflow.SPNoCodeXomlCompiler.LoadXomlAssembly(Chuỗi assmNameIn, SPWeb web)
    tại Microsoft.SharePoint.Workflow.SPWinOeHostServices.CreateInstance(GUID trackingId, Quy trình làm việc SPWorkflow)
    tại Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(GUID trackingId, Máy chủ lưu trữ SPWorkflowHostService, Quy trình làm việc SPWorkflow, Bộ sưu tập ' 1 sự kiện, Thời gian chờ TimeSpan)
    tại Microsoft.SharePoint.Workflow.SPWorkflowManager.RunWorkflowElev(SPWorkflow originalWorkflow, Quy trình làm việc SPWorkflow, Bộ sưu tập ' 1 sự kiện, SPRunWorkflowOptions runOptions)

    Tôi tìm thấy một tham chiếu đến lỗi này trên một blog, http://www.kentd.com/index.php/all-blog/218-nivlag-and-spdgenericinterface. Tác giả chỉ ra ông đã sử dụng tùy chỉnh actitivity thay thế(), là tốt. Bạn đã thấy lỗi này? Bạn có bất kỳ đề xuất về làm thế nào để giải quyết nó?

    1. Paul Galvin bài tác giả

      Xin lỗi tôi không bao giờ trả lời. Tại thời điểm của thị, nó là có thể tranh luận. Tôi hy vọng bạn đã có thể giải quyết nó.

Để lại một trả lời Marco mancinelli hủy trả lời

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *