从位图流C#计算MD5的问题

问题描述

当我将Bmp作为流传递时,函数总是返回,

use std::rc::Rc;

pub struct DieselConnection {}

pub struct WrapperConnection {
    pub conn: Rc<DieselConnection>,}

pub enum ConnectionError {}

impl DieselConnection {
    pub fn add_user(&self,name: &str) -> Result<(),ConnectionError> {
        Ok(())
    }
    pub fn transaction<T,E,F>(&self,f: F) -> Result<T,E>
    where
        F: FnOnce() -> Result<T,E>,{
        self.begin_transaction();
        let result = f();
        if result.is_ok() {
            self.end_transaction();
        } else {
            self.abort_transaction();
        }
        return result;
    }
    fn begin_transaction(&self) {}
    fn end_transaction(&self) {}
    fn abort_transaction(&self) {}
}

impl WrapperConnection {
    pub fn add_user(&mut self,ConnectionError> {
        self.conn.add_user(name)
    }
    pub fn transaction<T,F>(&mut self,E>
    where
        F: FnOnce(&mut WrapperConnection) -> Result<T,{
        let temp_conn = self.conn.clone();
        temp_conn.transaction(|| f(self))
    }
}

pub fn perform_insert_two_names_transactionally(
    conn: &mut WrapperConnection,name1: &str,name2: &str,) -> Result<(),ConnectionError> {
    conn.transaction(|conn| {
        conn.add_user(name1)?;
        conn.add_user(name2)?;
        Ok(())
    })
}

但文件正确保存在磁盘上。 当我从磁盘加载bpm时,函数返回正确的MD5。还传递“新的Bitmap(int x,int y);”值不同的返回相同的MD5。

为什么会这样?

D4-1D-8C-D9-8F-00-B2-04-E9-80-09-98-EC-F8-42-7E

有人可以解释这种奇怪的行为吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)