C# - 不发送任何错误消息但无法正常工作

时间:2013-02-11 08:02:07

标签: c# regex syntax methods

我做错了什么?我没有收到任何错误消息,但它无法正常工作 -

代码部分:

    int n = Convert.ToInt32(args.Content);
    if (n >= 10000)
        n = (int) (n - (n * 0.85));
    return n.ToString();

仅在我评论上一部分代码时才有效:

    Match match = Regex.Match(args.Content, "ca.*?2013", RegexOptions.IgnoreCase);  
    if (match.Success)
        args.Content = match.Groups[1].Value + "Aktl.";
    return args.Content;

贝娄是完整的剧本:

using System;
using System.Text.RegularExpressions;
using VisualWebRipper.Internal.SimpleHtmlParser;
using VisualWebRipper;
public class Script
{
    //See help for a definition of WrContentTransformationArguments.
    public static string TransformContent(WrContentTransformationArguments args)
    {
        try
        {
            //Place your transformation code here.
            //This example just returns the input data

            Match match = Regex.Match(args.Content, "ca.*?2013", RegexOptions.IgnoreCase);  
            if (match.Success)
                args.Content = match.Groups[1].Value + "Aktl.";
            return args.Content;
            int n = Convert.ToInt32(args.Content);
            if (n >= 10000)
                n = (int) (n - (n * 0.85));
            return n.ToString();
        }
        catch(Exception exp)
        {
            //Place error handling here
            args.WriteDebug("Custom script error: " + exp.Message);
            return "Custom script error";
        }
    }
}

2 个答案:

答案 0 :(得分:2)

我认为你需要:

        if (match.Success)
        {
            args.Content = match.Groups[1].Value + "Aktl.";
            return args.Content;
        }

在:

        if (match.Success)
            args.Content = match.Groups[1].Value + "Aktl.";
        return args.Content;
始终执行

return语句,并使其余代码无法访问。条件表达式 - if(...) - 不带括号仅包括if检查后的下一个语句,总是执行return

答案 1 :(得分:0)

return args.Content;

你从这个函数返回这一行,控件不会低于该值。