Exemple #1
0
        /// <summary>
        /// 根据条件语句取得第一个实体
        /// </summary>
        /// <param name="m_where">条件语句,不包含“where”</param>
        /// <returns></returns>
        public static MovieUrl Find(string m_where)
        {
            IDbHelper    Sql = GetHelper();
            MovieUrl     M   = new MovieUrl();
            DbDataReader Rs  = Sql.ExecuteReader(CommandType.Text, "select [id],[MoviewID],[MoviewTitle],[Title],[UpdateTime],[Enable],[HttpUrl],[MagUrl],[KuaibUrl],[BaiduUrl] from [MovieUrl] where " + m_where, true);

            if (!Rs.Read())
            {
                M.Id = long.MinValue;
            }
            else
            {
                M.Id          = Rs["id"].ToInt64();
                M.MoviewID    = Rs["MoviewID"].ToInt32();
                M.MoviewTitle = Rs["MoviewTitle"].ToString();
                M.Title       = Rs["Title"].ToString();
                M.UpdateTime  = Rs["UpdateTime"].ToDateTime();
                M.Enable      = Rs["Enable"].ToBoolean();
                M.HttpUrl     = Rs["HttpUrl"].ToString();
                M.MagUrl      = Rs["MagUrl"].ToString();
                M.KuaibUrl    = Rs["KuaibUrl"].ToString();
                M.BaiduUrl    = Rs["BaiduUrl"].ToString();
            }
            Rs.Close();
            Rs = null;
            return(M);
        }
Exemple #2
0
        public override string ToString()
        {
            string flashvars = string.Empty;

            foreach (string key in Keys)
            {
                flashvars += $"{key}={this[key]}&amp;";
            }

            return(string.Format(_clientLoaderFormat,
                                 BaseUrl, MovieUrl.Replace("http:", string.Empty), flashvars));
        }
Exemple #3
0
        /// <summary>
        /// 将修改过的实体修改到数据库
        /// </summary>
        /// <param name="M">赋值后的实体</param>
        /// <returns></returns>
        public static int Update(MovieUrl M)
        {
            IDbHelper     Sql = GetHelper();
            StringBuilder sb  = new StringBuilder();

            sb.Append("update [MovieUrl] set ");

            sb.Append("[MoviewID]=" + M.MoviewID.ToS());
            sb.Append(",");
            sb.Append("[MoviewTitle]=N'" + M.MoviewTitle + "'");
            sb.Append(",");
            sb.Append("[Title]=N'" + M.Title + "'");
            sb.Append(",");
            sb.Append("[UpdateTime]=N'" + M.UpdateTime + "'");
            sb.Append(",");
            sb.Append("[Enable]=" + M.Enable.ToS());
            sb.Append(",");
            sb.Append("[HttpUrl]=N'" + M.HttpUrl + "'");
            sb.Append(",");
            sb.Append("[MagUrl]=N'" + M.MagUrl + "'");
            sb.Append(",");
            sb.Append("[KuaibUrl]=N'" + M.KuaibUrl + "'");
            sb.Append(",");
            sb.Append("[BaiduUrl]=N'" + M.BaiduUrl + "'");

            sb.Append(" where Id='" + M.Id + "'");
            sb.Append("");

            if (DataBase.CmsDbType == DataBase.DbType.SqlServer)
            {
                sb.Append(";select @@ROWCOUNT");
            }
            if (DataBase.CmsDbType == DataBase.DbType.SQLite)
            {
                sb.Append(";select 0");
            }
            if (DataBase.CmsDbType == DataBase.DbType.MySql)
            {
                sb.Append(";SELECT ROW_COUNT()");
            }
            if (DataBase.CmsDbType == DataBase.DbType.Access)
            {
                sb.Append(";select 0");
            }
            if (DataBase.CmsDbType == DataBase.DbType.Oracle)
            {
                sb.Append(";select SQL%ROWCOUNT");
            }


            return(Sql.ExecuteScalar(CommandType.Text, sb.ToString()).ToInt32());
        }
Exemple #4
0
        /// <summary>
        /// 将数据插入表
        /// </summary>
        /// <param name="M">赋值后的实体</param>
        /// <returns></returns>
        public static void Insert(MovieUrl M)
        {
            IDbHelper     Sql = GetHelper();
            StringBuilder sb  = new StringBuilder();

            sb.Append("insert into [MovieUrl]([id],[MoviewID],[MoviewTitle],[Title],[UpdateTime],[Enable],[HttpUrl],[MagUrl],[KuaibUrl],[BaiduUrl]) values(");
            sb.Append(M.MoviewID.ToS());
            sb.Append(",");
            sb.Append("N'" + M.MoviewTitle + "'");
            sb.Append(",");
            sb.Append("N'" + M.Title + "'");
            sb.Append(",");
            sb.Append("N'" + M.UpdateTime + "'");
            sb.Append(",");
            sb.Append(M.Enable.ToS());
            sb.Append(",");
            sb.Append("N'" + M.HttpUrl + "'");
            sb.Append(",");
            sb.Append("N'" + M.MagUrl + "'");
            sb.Append(",");
            sb.Append("N'" + M.KuaibUrl + "'");
            sb.Append(",");
            sb.Append("N'" + M.BaiduUrl + "'");
            sb.Append(")");

            if (DataBase.CmsDbType == DataBase.DbType.SqlServer)
            {
                sb.Append(";select @@Identity");
            }
            if (DataBase.CmsDbType == DataBase.DbType.SQLite)
            {
                sb.Append(";select last_insert_rowid()");
            }
            if (DataBase.CmsDbType == DataBase.DbType.MySql)
            {
                sb.Append(";select LAST_INSERT_ID()");
            }
            if (DataBase.CmsDbType == DataBase.DbType.Access)
            {
                sb.Append(";select max(id) from MovieUrl");
            }
            if (DataBase.CmsDbType == DataBase.DbType.Oracle)
            {
                sb.Append(";select LAST_INSERT_ID()");
            }


            M.Id = Sql.ExecuteScalar(CommandType.Text, sb.ToString()).ToInt32();
        }
Exemple #5
0
 protected virtual void MediaCommandExecute()
 {
     if (IsMovie)
     {
         // Per Youtube's policies, all videos must be presenting on their site
         if (MovieUrl.Contains("youtube"))
         {
             _browserService.OpenUrl(MovieUrl);
         }
         else if (RequestMovieViewer != null)
         {
             RequestMovieViewer(this);
         }
     }
     else
     {
         if (RequestPhotoViewer != null)
         {
             RequestPhotoViewer(this);
         }
     }
 }
Exemple #6
0
        /// <summary>
        /// DataTable转换为list
        /// </summary>
        /// <param name="dt"></param>
        /// <returns></returns>
        protected static List <MovieUrl> DataTableToList(DataTable dt)
        {
            List <MovieUrl> Ms = new List <MovieUrl>();

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                MovieUrl M = new MovieUrl();
                M.Id          = dt.Rows[i]["id"].ToInt64();
                M.MoviewID    = dt.Rows[i]["MoviewID"].ToInt32();
                M.MoviewTitle = dt.Rows[i]["MoviewTitle"].ToString();
                M.Title       = dt.Rows[i]["Title"].ToString();
                M.UpdateTime  = dt.Rows[i]["UpdateTime"].ToDateTime();
                M.Enable      = dt.Rows[i]["Enable"].ToBoolean();
                M.HttpUrl     = dt.Rows[i]["HttpUrl"].ToString();
                M.MagUrl      = dt.Rows[i]["MagUrl"].ToString();
                M.KuaibUrl    = dt.Rows[i]["KuaibUrl"].ToString();
                M.BaiduUrl    = dt.Rows[i]["BaiduUrl"].ToString();

                Ms.Add(M);
            }
            return(Ms);
        }
Exemple #7
0
        public HGameData(string source)
        {
            this["connection.info.host"] = string.Empty;
            this["connection.info.port"] = string.Empty;

            Match flashVarsMatch =
                _flashVarsSingleLineMatcher.Match(source);

            bool isSwfObject = false;

            if (isSwfObject = !flashVarsMatch.Success)
            {
                flashVarsMatch =
                    GetVariable(source, "flashvars");
            }

            string variables =
                flashVarsMatch.Groups["value"].Value + ";";

            try
            {
                string movieUrl = string.Empty;
                if (!isSwfObject)
                {
                    string dataParam  = "data=\"";
                    string movieParam = "<param name=\"movie\" value=\"";

                    movieUrl = (source.GetChild((source.Contains(
                                                     movieParam) ? movieParam : dataParam), '"'));

                    movieUrl = $"\"{movieUrl}\"";
                }
                else
                {
                    movieUrl = source.GetChild(".embedSWF(", ',');
                }

                char charBegin   = movieUrl[0];
                bool isFieldName = (charBegin != '\"' && charBegin != '\'');

                if (isSwfObject)
                {
                    Match paramsMatch = GetVariable(source, "params");
                    if (paramsMatch.Success)
                    {
                        string flashParams = paramsMatch.Groups["value"].Value
                                             .GetChild("{", '}').Replace(" :", ":").Replace(": ", ":").Trim();

                        BaseUrl = FixUrlString(flashParams.GetChild("\"base\":\"", '"'));
                    }

                    if (isFieldName)
                    {
                        movieUrl  = GetVariable(source, movieUrl).Groups["value"].Value;
                        charBegin = movieUrl[0];
                    }
                }

                if (!string.IsNullOrWhiteSpace(movieUrl))
                {
                    movieUrl = movieUrl.GetChild(charBegin.ToString(), charBegin);
                    MovieUrl = FixUrlString(movieUrl);

                    string[] segments = MovieUrl.GetChild("//")
                                        .GetChild("/").Split('/');

                    int buildSegmentIndex = segments.Length > 1 ?
                                            segments.Length - 2 : 0;

                    MovieName = segments[buildSegmentIndex];

                    if (buildSegmentIndex == 0)
                    {
                        MovieName = MovieName.GetParent(".swf");
                    }
                }
            }
            catch { }

            if (isSwfObject)
            {
                variables = variables.GetChild("{").GetParent("};")
                            .Replace(" :", ":").Replace(": ", ":").Trim();

                int    previousLength  = 0;
                string parsedVariables = string.Empty;
                while (variables.Contains("\""))
                {
                    string name  = variables.GetChild("\"", '"');
                    string child = variables.GetChild($"\"{name}\":").Trim();

                    string value     = string.Empty;
                    string fieldName = string.Empty;
                    bool   isField   = (child[0] != '"' && child[0] != '\'');
                    bool   isEmpty   = (child.Length > 1 && (child[1] == '"' || child[1] == '\''));

                    if (isField)
                    {
                        fieldName = child.GetParent(",");

                        Match variableMatch =
                            GetVariable(source, fieldName);

                        string fieldValue = variableMatch.Groups["value"].Value;
                        isEmpty = string.IsNullOrWhiteSpace(fieldValue);

                        if (!isEmpty)
                        {
                            child = child.Replace(fieldName,
                                                  variableMatch.Groups["value"].Value);
                        }
                    }

                    if (!isEmpty)
                    {
                        value = child.GetChild("\"", '"');
                    }

                    string toRemove = string.Format("\"{0}\":{1}{2}{1}",
                                                    name, (isField ? string.Empty : "\""), (isField ? fieldName : value));

                    variables        = variables.Replace(toRemove, string.Empty);
                    parsedVariables += $"{name}={value}&amp;";
                    previousLength   = variables.Length;
                }
                variables = parsedVariables;
            }

            if (!variables.Contains("&amp;"))
            {
                variables = variables.Replace("&", "&amp;");
            }

            string[] valuePairs = variables
                                  .Split(_flashValuesSeparator, StringSplitOptions.RemoveEmptyEntries);

            foreach (string pair in valuePairs)
            {
                int    separatorIndex = pair.IndexOf('=');
                string name           = pair.Substring(0, separatorIndex);
                string value          = pair.Substring(separatorIndex + 1);

                value      = FixUrlString(value);
                this[name] = value;
            }
        }
Exemple #8
0
 public void AddToMovieUrl(MovieUrl movieUrl)
 {
     base.AddObject("MovieUrl", movieUrl);
 }
Exemple #9
0
 public static MovieUrl CreateMovieUrl(long id)
 {
     MovieUrl movieUrl = new MovieUrl();
     movieUrl.id = id;
     return movieUrl;
 }